Editor PHP Apple telah menyusun panduan yang diperlukan untuk temu bual Java: Soalan Lazim tentang Antara Muka dan Kelas Abstrak. Dalam temu bual Java, antara muka dan kelas abstrak adalah topik penting yang sering ditanya. Melalui artikel ini, anda akan mempelajari tentang perbezaan, senario penggunaan, kelebihan dan keburukan antara muka dan kelas abstrak, dsb., yang akan membantu anda bersedia dengan lebih baik untuk temu duga dan menunjukkan keupayaan teknikal anda. Mari selami soalan penting ini untuk menyokong wawancara Java anda!
S2: Apakah perbezaan antara antara muka dan kelas abstrak?
Ciri-ciri | Antaramuka | Kelas abstrak |
---|---|---|
Kaedah | Hanya boleh diisytihar, tidak dilaksanakan | boleh diisytihar dan dilaksanakan |
Tercapai | Mesti dilaksanakan oleh kelas yang melaksanakannya | Boleh dilaksanakan melalui subkelas |
Pusaka berbilang | Sokong pelbagai warisan | Tidak menyokong pelbagai warisan |
Instantiation | Tidak boleh instantiated | Boleh instantiate (tetapi tidak mencipta objek) |
S3: Bila hendak menggunakan antara muka atau kelas abstrak?
S4: Apakah hubungan antara warisan berbilang antara muka dan warisan tunggal-berbilang kelas abstrak?
S5: kaedah lalai dan statik dalam antara muka
Java 8 memperkenalkan kaedah lalai dan statik antara muka:
Kod demo:
interface Drawable { void draw(); default void print() { System.out.println("Drawing..."); } static void show() { System.out.println("Show drawing..."); } } class Circle implements Drawable { @Override public void draw() { System.out.println("Drawing a circle..."); } } public class Main { public static void main(String[] args) { Drawable circle = new Circle(); circle.draw(); Drawable.print(); Drawable.show(); } }
Keluaran:
Drawing a circle... Drawing... Show drawing...
S6: kaedah akhir dan statik dalam kelas abstrak
Kelas abstrak boleh mengandungi kaedah akhir dan statik:
S7: Kebenaran akses dalam antara muka dan kelas abstrak
Semua kaedah dan pemalar dalam antara muka adalah awam dan abstrak secara lalai. Kaedah dalam kelas abstrak boleh mempunyai pelbagai hak akses, tetapi kaedah abstrak adalah awam dan abstrak secara lalai.
S8: Instasiasi dan panggilan antara muka dan kelas abstrak
S9: Perbandingan antara muka dan kelas abstrak
Ciri-ciri | Antaramuka | Kelas abstrak |
---|---|---|
Polimorfisme | Sokongan | Sokongan |
Kaedah abstrak | Wajib isytihar | boleh declare |
Kaedah khusus | Tidak disokong | boleh declare |
Pusaka berbilang | Sokongan | Tidak disokong |
Instantiation | Tidak boleh instantiated | Boleh instantiated, tetapi tidak boleh mencipta objek |
Menyahpepijat | Kesukaran (melakukannya dalam kelas pelaksanaan) | Agak mudah (buat dalam kelas abstrak) |
Fleksibiliti dan kebolehskalaan | Lebih fleksibel dan lebih berskala | Fleksibiliti rendah dan skalabiliti lemah |
S10: Soalan perangkap biasa dalam temu bual
Atas ialah kandungan terperinci Keperluan temu bual Java: Soalan Lazim tentang antara muka dan kelas abstrak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!