Ini mungkin telah ditanyakan sebelumnya, tetapi pencarian cepat hanya memunculkan pertanyaan yang sama dengan C #. Lihat disini.
Apa yang saya ingin lakukan pada dasarnya adalah untuk memeriksa apakah objek yang diberikan mengimplementasikan antarmuka yang diberikan.
Saya agak menemukan solusi tetapi ini tidak cukup nyaman untuk menggunakannya sering dalam pernyataan if atau case dan saya bertanya-tanya apakah Jawa tidak memiliki solusi bawaan.
public static Boolean implementsInterface(Object object, Class interf){
for (Class c : object.getClass().getInterfaces()) {
if (c.equals(interf)) {
return true;
}
}
return false;
}
EDIT: Ok, terima kasih atas jawaban Anda. Khusus untuk Damien Pollet dan Noldorin, Anda membuat saya memikirkan kembali desain saya sehingga saya tidak menguji antarmuka lagi.