কম্পিউটার

কোটলিনে রিফাইড কীওয়ার্ড কীভাবে কাজ করে?


"রিফাইড"৷ একটি বিশেষ ধরনের কীওয়ার্ড যা কোটলিন ডেভেলপারদের রানটাইমে ক্লাস সম্পর্কিত তথ্য অ্যাক্সেস করতে সাহায্য করে। "রিফাইড"৷ শুধুমাত্র ইনলাইন এর সাথে ব্যবহার করা যেতে পারে ফাংশন যখন "পুনঃকৃত" কীওয়ার্ড ব্যবহার করা হয়, কম্পাইলার ফাংশনের বাইটকোড কোডের প্রতিটি বিভাগে অনুলিপি করে যেখানে ফাংশনটি কল করা হয়েছে। এইভাবে, জেনেরিক টাইপ টি একটি আর্গুমেন্ট হিসাবে যে মানটি পায় তার জন্য নির্ধারিত হবে৷

উদাহরণ

এই উদাহরণে, আমরা দেখব কিভাবে "রিফাইড" আমাদের কোড পুনঃব্যবহার করতে এবং একই ফাংশন ব্যবহার করে একই ধরণের অপারেশন করার জন্য এটির পাসিং আর্গুমেন্ট নির্বিশেষে সহায়ক৷

এই উদাহরণের জন্য, আমরা একটি ইনলাইন ফাংশন তৈরি করেছি এবং আমরা একটি জেনেরিক "রিফাইড" পাস করছি যুক্তি T এবং main() থেকে কোটলিনের, আমরা কল করছি myExample() বিভিন্ন যুক্তি সহ একাধিক বার৷

// Declaring Inline function
inline fun <reified T> myExample(name: T) {
   println("\nName of your website -> "+name)
   println("\nType of myClass: ${T::class.java}")
}

fun main() {

   // calling func() with String
   myExample<String>("www.tutorialspoint.com")

   // calling func() with Int value
   myExample<Int>(100)

   // calling func() with Long value
   myExample<Long>(1L)

}

আউটপুট

এটি নিম্নলিখিত আউটপুট −

তৈরি করবে
Name of your website -> www.tutorialspoint.com

Type of myClass: class java.lang.String

Name of your website -> 100

Type of myClass: class java.lang.Integer

Name of your website -> 1

Type of myClass: class java.lang.Long

  1. ক্রিপ্টোকারেন্সি ওয়ার্ল্ডকয়েন কি? এবং এটি কিভাবে কাজ করে?

  2. এটা কি, এটা কিসের জন্য এবং কিভাবে ওয়াইফাই মেশ নেটওয়ার্ক কাজ করে?

  3. YouTube অ্যালগরিদম কীভাবে কাজ করে?

  4. সমান চিহ্ন নয় - কীভাবে সমান প্রতীক নয় টাইপ করবেন