Câu hỏi phỏng vấn Kotlin
Câu hỏi

SAM Conversion ...

Câu trả lời

SAM Conversion trong Kotlin là một tính năng hữu ích cho phép bạn chuyển đổi một biểu thức lambda thành một thể hiện của một Single Abstract Method (SAM) interface. SAM interface là một interface chỉ có một phương thức trừu tượng duy nhất. Tính năng này đặc biệt hữu ích khi làm việc với các thư viện Java, nơi mà các interface như Runnable, Callable, hoặc các listener trong Android thường chỉ có một phương thức trừu tượng.

Cách SAM Conversion Hoạt Động

Trong Java, bạn thường sử dụng các lớp ẩn danh để triển khai các interface này. Kotlin đơn giản hóa quá trình này bằng cách cho phép bạn sử dụng các biểu thức lambda thay vì phải định nghĩa một lớp ẩn danh. Khi bạn gán một lambda cho một biến kiểu SAM interface, Kotlin tự động chuyển đổi lambda thành một thể hiện của interface đó.

Ví dụ về SAM Conversion

Giả sử bạn có một interface Java với một phương thức trừu tượng:

java Copy
public interface ClickListener {
    void onClick(View view);
}

Trong Kotlin, bạn có thể triển khai interface này bằng cách sử dụng lambda như sau:

kotlin Copy
val clickListener = ClickListe...
expert

expert

Gợi ý câu hỏi phỏng vấn

middle

Cách tiếp cận tự nhiên để xử lý các giá trị có thể null như thế nào, tham chiếu hoặc chuyển đổi chúng là gì?

senior

Backing field trong Kotlin được sử dụng để làm gì?

middle

Data class trong Kotlin là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào