SAM Conversion ...
SAM Conversion ...
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.
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 đó.
Giả sử bạn có một interface Java với một phương thức trừu tượng:
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:
val clickListener = ClickListe...
expert
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào