instanceof di Java digunakan untuk menunjukkan pada runtime apakah objek adalah instance dari kelas tertentu. instanceof menunjukkan apakah objek tersebut adalah instance dari kelas tertentu ini atau subkelasnya dengan mengembalikan boolean.
instanceof di Java ada di .net!
Penggunaan: result = instance objekkelas Parameter: Hasil: Tipe Boolean. Objek: Wajib. Ekspresi objek arbitrer. Kelas: Wajib. Setiap kelas objek yang ditentukan. Menggambarkan: Jika objek adalah instance dari kelas, operator instanceof mengembalikan true. Jika objek bukan instans dari kelas yang ditentukan, atau jika objek null, false akan ditampilkan.
Namun, ada perbedaan antara status kompilasi dan status instance instance yang sedang berjalan di Java:
Dalam status yang dikompilasi, class dapat berupa class induk, kelasnya sendiri, atau class anak dari objek objek. Dalam ketiga kasus ini, Java tidak melaporkan kesalahan saat mengkompilasi.
Dalam transisi yang sedang berjalan, class dapat berupa class induk dari objek objek, kelasnya sendiri, bukan class turunan. Dalam dua kasus pertama, hasilnya benar, dan yang terakhir adalah salah. Namun, ketika class adalah subkelas, kompilasi tidak akan melaporkan error. Hasil eksekusinya salah.
Contoh:
antarmuka Orang
antarmuka publik Orang { publik kosong makan();
}
Menerapkan kelas People
kelas publik Orang mengimplementasikan Person { pribadi int a = 0; @Override public void eat() { System.out.println("======"+a);
}
}
Subkategori xiaoming:
kelas publik xiaoming memperluas Orang { nama String pribadi;
@Override public void eat() { System.out.println("+++++++++");
}
}
Fungsi utama
Catatan: Kode di 2 tempat di atas tidak akan melaporkan kesalahan saat mengkompilasi.
Hasil jalan:
true
false
true
true
|