Ekspresi Lambda dan rujukan kaedah menyediakan cara alternatif untuk mentakrif antara muka berfungsi dalam Java. Walau bagaimanapun, kekeliruan timbul apabila rujukan kaedah dengan jenis pulangan kelihatan sepadan dengan antara muka Pengguna, walaupun kaedah terima Pengguna mempunyai jenis pulangan yang tidak sah.
Seperti yang dijelaskan oleh Brian Goetz, tingkah laku ini adalah disengajakan. Ia membolehkan pembangun menyesuaikan kaedah kepada antara muka berfungsi dengan cara yang sama mereka akan memanggil kaedah secara langsung. Oleh itu, kaedah pemulangan nilai boleh digunakan dengan antara muka Pengguna, mengabaikan nilai pulangan.
Ekspresi Lambda boleh mengambil dua bentuk:
Rujukan kaedah ialah cara lain untuk menentukan antara muka berfungsi. Walau bagaimanapun, tidak semua kaedah boleh digunakan sebagai rujukan kaedah dengan Pengguna. Khususnya:
Satu-satunya bentuk ungkapan yang tidak serasi nilai ialah (arg) -> methodReturningVoid(arg). Ini kerana ia tidak mengembalikan nilai.
Keserasian rujukan kaedah dengan Pengguna bergantung pada jenis pulangan dan sama ada ungkapan itu boleh digunakan sebagai pernyataan. Memahami konsep ini membantu menjelaskan cara lambda dan rujukan kaedah berinteraksi dengan antara muka berfungsi dalam Java.
Atas ialah kandungan terperinci Bagaimanakah Kaedah dengan Jenis Pulangan Boleh Digunakan dengan Antara Muka Pengguna Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!