Computer >> Máy Tính >  >> Lập trình >> Android

Từ khóa được sửa lại hoạt động như thế nào trong Kotlin?

"đã sửa đổi" là một loại từ khóa đặc biệt giúp các nhà phát triển Kotlin truy cập thông tin liên quan đến một lớp trong thời gian chạy. "đã sửa đổi" chỉ có thể được sử dụng với nội tuyến chức năng. Khi "được sửa đổi" từ khóa được sử dụng, trình biên dịch sao chép mã bytecode của hàm vào mọi phần của mã mà hàm đã được gọi. Bằng cách này, kiểu chung T sẽ được gán cho kiểu giá trị mà nó nhận được làm đối số.

Ví dụ

Trong ví dụ này, chúng ta sẽ xem cách "sửa đổi" rất hữu ích khi sử dụng lại mã của chúng tôi và sử dụng cùng một chức năng để thực hiện loại hoạt động tương tự bất kể đối số truyền của nó là gì.

Đối với ví dụ này, chúng tôi đã tạo một hàm Nội tuyến và chúng tôi đang chuyển một "đã được sửa đổi" chung đối số T và từ main () của Kotlin, chúng tôi đang gọi myExample () nhiều lần với các đối số khác nhau.

// 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)

}

Đầu ra

Nó sẽ tạo ra kết quả sau -

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