Rumah > Java > javaTutorial > Perbezaan dalam sintaks antara muka antara versi Java dan persamaan dan perbezaan antara kelas abstrak dan antara muka

Perbezaan dalam sintaks antara muka antara versi Java dan persamaan dan perbezaan antara kelas abstrak dan antara muka

PHPz
Lepaskan: 2023-05-06 14:52:13
ke hadapan
1202 orang telah melayarinya

Apakah itu antara muka?

Bercakap tentang antara muka, USB sememangnya biasa kepada semua orang~
Antaramuka ialah standard dan spesifikasi.
Nota: Setelah antara muka dirumus, kedua-dua pengguna dan pelaksana mesti mengikut standard.

Perbezaan dalam sintaks antara muka antara versi Java dan persamaan dan perbezaan antara kelas abstrak dan antara muka

Sintaks antara muka: (JDK7.0)

(1) Kata kunci: antara muka
(2) Sintaks: nama antara muka antara muka{}
(3 ) Selepas antara muka disusun, fail .class yang sepadan akan dihasilkan
(4) Antara muka tidak boleh mencipta objek, tetapi ia boleh mengisytiharkan rujukan kepada nama antara muka
(5) Tiada kaedah pembina dalam antara muka
(6 ) Semua sifat dalam antara muka ialah pemalar statik awam
(lalai: akhir statik awam)
(7) Semua kaedah dalam antara muka ialah kaedah abstrak awam
(lalai: abstrak awam pengubahsuaian)
Nota: Kebenaran akses lalai untuk kaedah dalam antara muka adalah awam
Kebenaran akses lalai untuk kaedah dalam kelas adalah lalai

Kelas pelaksanaan antara muka:

Sintaks:

nama kelas melaksanakan nama antara muka{}

Nota: Kata kunci pelaksanaan ialah melaksanakan
(1) Jika kelas pelaksanaan tidak mahu untuk menjadi kelas abstrak, ia mesti mengatasi (melaksanakan) antara muka Semua kaedah
(2) Apabila kelas pelaksanaan mengatasi kaedah dalam antara muka, kebenaran akses mestilah awam
Gunakan:
(1) Dalam rujukan jenis antara muka, hanya objek kelas pelaksanaan yang sepadan boleh disimpan Aplikasi yang mencerminkan polimorfisme
(2) Sintaks:

Nama rujukan nama antara muka = ​​nama kelas pelaksanaan baharu (. parameter sebenar);

Nota: antara muka Pelbagai kelas pelaksanaan boleh ditakrifkan

Warisan antara muka: (sangat penting~)

Hubungan antara antara muka ialah warisan berbilang

(1) Antara muka Anda boleh mewarisi berbilang antara muka induk pada masa yang sama

(2) Sintaks:

nama antara muka antara muka memanjangkan nama antara muka induk 1, nama antara muka induk 2{}

Terdapat hubungan pelbagai pelaksanaan antara kelas dan antara muka

(1) Kelas boleh melaksanakan berbilang antara muka pada masa yang sama

(2) Sintaks:

nama kelas kelas melaksanakan nama antara muka 1, nama antara muka 2 {}

(3) Jika kelas melaksanakan berbilang antara muka pada masa yang sama , dan tidak mahu menjadi kelas abstrak, ia perlu melaksanakan semua kaedah dalam semua antara muka
(termasuk semua Kaedah dalam antara muka induk yang melaksanakan antara muka)

Sebuah kelas boleh melaksanakan berbilang antara muka dan mewarisi kelas pada masa yang sama

(1) Jika kelas mewarisi kelas induk dan melaksanakan berbilang antara muka pada masa yang sama , mesti diwarisi dahulu, dan kemudian dilaksanakan

(2) Sintaks:

nama kelas kelas melanjutkan nama kelas induk melaksanakan antara muka induk 1, antara muka induk 2{}

Nota: Mesti melanjutkan dahulu, kemudian melaksanakan

Kewujudan antara kelas: warisan tunggal------lanjutkan

Kewujudan antara kelas dan antara muka: berbilang pelaksanaan-- ----implements

Wujud antara antara muka: berbilang warisan----- -melanjutkan

Kesan antara muka:

1 Memandangkan antara muka adalah Hubungan antara pelbagai warisan dan pelbagai pelaksanaan antara kelas dan antara muka menjadikan polimorfisme lebih pelbagai dan kompleks
2. Jika. hanya satu daripada dua pihak penukaran jenis paksa ialah jenis antara muka, kompilasi mesti lulus dan dijalankan Terdapat dua situasi:
a. jalankan melalui
b. Jika jenis objek sebenar yang disimpan dalam rujukan ditukar bukan jenis yang akan ditukarkan Satu, kompilasi akan diluluskan, tetapi ralat dilaporkan semasa menjalankan, mesej ralat:
Java.lang. ClassCastException (jenis penukaran pengecualian)

Sintaks antara muka: (JDK8.0)

(1) Kaedah lalai:

a (senarai parameter rasmi) {
                                                                                                                                                                                                                 d. Kaedah lalai dibenarkan untuk ditindih, tetapi pengubah suai akses apabila ditindih adalah awam

(2) Kaedah statik:


nama kaedah jenis nilai pulangan statik awam ( senarai parameter rasmi) {
                                                                                                                                                                                                 . Hak akses kaedah statik dalam antara muka adalah awam

Sintaks antara muka: (JDK9.0)—(Kaedah peribadi )

(1) Dari Bermula dari 9.0, kaedah boleh diubah suai oleh peribadi


(2) Sintaks:

nama kaedah jenis nilai pulangan peribadi (parameter formal senarai) {

// Pelaksanaan kaedah

}

(3) Kaedah persendirian digunakan secara dalaman oleh antara muka Bahagian logik biasa kaedah lain biasanya diekstrak untuk mengurangkan lebihan kod

Klasifikasi antara muka

Antara muka tetap: <.>

Hanya terdapat atribut dan tiada kaedah dalam antara muka, dan terdapat beberapa aplikasi

Antara muka kosong:

Ia biasanya dipanggil antara muka bertanda, dan tiada atribut dan abstraksi dalam antara muka;

Contohnya: IO Gunakan antara muka berfungsi

semasa mensiri objek: Terdapat dan hanya satu kaedah abstrak dalam antara muka

(statik dan tidak berkenaan secara lalai) , yang digunakan secara meluas dalam ungkapan Lambda

Apakah perbezaan antara kelas abstrak dan antara muka? (Perlu diingat~)

Perbezaan dalam sintaks antara muka antara versi Java dan persamaan dan perbezaan antara kelas abstrak dan antara muka

Atas ialah kandungan terperinci Perbezaan dalam sintaks antara muka antara versi Java dan persamaan dan perbezaan antara kelas abstrak dan antara muka. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan