Rumah >Java >javaTutorial >Adakah Kaedah Statik Benar-benar Diwarisi di Jawa?

Adakah Kaedah Statik Benar-benar Diwarisi di Jawa?

DDD
DDDasal
2024-12-22 06:44:11931semak imbas

Are Static Methods Truly Inherited in Java?

Warisan Kaedah Statik dalam Java

Walaupun dakwaan bahawa kaedah statik tidak diwarisi dalam Java, kod menunjukkan sebaliknya. Percanggahan ini menimbulkan persoalan: adakah kaedah statik benar-benar diwarisi?

Untuk memahami paradoks yang jelas ini, adalah penting untuk menyemak semula konsep pewarisan ahli di Jawa. Menurut buku itu, ahli superclass yang boleh diakses (tanpa menggunakan "super") dianggap diwarisi.

Walau bagaimanapun, Tutorial Java Sun memberikan perspektif yang lebih luas:

  • Subkelas mewarisi semua ahli awam dan dilindungi kelas induk mereka, tanpa mengira pakej.
  • Jika subkelas berada dalam pakej yang sama, ia juga mewarisi ahli pakej-peribadi.

Berdasarkan ini, kaedah statik diwarisi kerana mereka adalah umum. Ia boleh diakses dengan nama ringkasnya dan tidak terikat kepada kejadian tertentu.

Satu-satunya keistimewaan dengan kaedah statik yang diwarisi ialah kelakuannya apabila kaedah statik baharu dengan tandatangan yang sama diperkenalkan dalam subkelas. Dalam kes ini, kaedah statik sedia ada disembunyikan, bukan ditindih. Tingkah laku ini memastikan bahawa pelaksanaan statik khusus untuk subkelas kekal tidak terjejas.

Oleh itu, penjelasan buku tentang warisan ahli terpakai pada kedua-dua kaedah dan kaedah statik, dengan perbezaan bahawa kaedah statik sentiasa kelihatan dan diwarisi jika ia boleh diakses dalam superclass. Tambahan pula, mengakses kaedah statik tersembunyi bergantung pada sama ada invokasi berlaku daripada superclass atau subclass.

Atas ialah kandungan terperinci Adakah Kaedah Statik Benar-benar Diwarisi di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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