Rumah > Java > javaTutorial > Mengapa Kaedah Statik Abstrak Haram di Jawa?

Mengapa Kaedah Statik Abstrak Haram di Jawa?

Susan Sarandon
Lepaskan: 2024-12-16 15:51:14
asal
617 orang telah melayarinya

Why are Abstract Static Methods Illegal in Java?

Memahami Pengecualian Kaedah Statik Abstrak dalam Java

Di Jawa, kaedah abstrak biasanya mentakrifkan kontrak untuk subkelas untuk dilaksanakan. Walau bagaimanapun, konsep "abstrak" bercanggah dengan sifat kaedah "statik".

Kaedah statik terikat kepada kelas itu sendiri, bukannya mana-mana objek tertentu, dan ia dilaksanakan tanpa memerlukan contoh kelas . Fungsi yang wujud ini bercanggah dengan prinsip abstrak, yang membayangkan kekurangan pelaksanaan.

Pertimbangkan contoh berikut:

abstract class foo {
    abstract void bar( ); // Legal
    abstract static void bar2(); // Illegal
}
Salin selepas log masuk

Dalam contoh ini, kaedah bar() adalah abstrak, menunjukkan bahawa ia mesti dilaksanakan dalam subkelas. Walau bagaimanapun, kaedah bar2() ditandakan sebagai abstrak dan statik. Gabungan ini tidak dibenarkan kerana:

  • "abstrak" bermaksud tiada pelaksanaan: Kaedah abstrak tidak mempunyai kod dan memerlukan subkelas untuk mentakrifkan fungsinya.
  • "statik" bermaksud kefungsian yang wujud: Kaedah statik mempunyai kod dan boleh dipanggil tanpa instantiating objek.

Memandangkan kaedah abstrak tidak boleh mempunyai kod, ia bercanggah dengan kefungsian yang tersirat oleh kaedah statik. Konflik logik ini menghalang pengisytiharan kaedah statik abstrak dalam Java.

Atas ialah kandungan terperinci Mengapa Kaedah Statik Abstrak Haram di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan