Rumah > Java > javaTutorial > Pembina Super Tersirat Tidak Ditakrifkan: Bagaimana untuk Menyelesaikan Isu Warisan ini di Jawa?

Pembina Super Tersirat Tidak Ditakrifkan: Bagaimana untuk Menyelesaikan Isu Warisan ini di Jawa?

Barbara Streisand
Lepaskan: 2024-11-29 01:52:10
asal
481 orang telah melayarinya

Implicit Super Constructor Undefined: How to Resolve This Inheritance Issue in Java?

Implisit Default Constructor Undefined: Resolution for Inheritance Pattern

Dalam pengaturcaraan berorientasikan objek dengan Java, adalah perkara biasa untuk melaksanakan corak kaedah templat, di mana kelas asas menyediakan kaedah abstrak untuk dilaksanakan oleh subkelasnya. Walau bagaimanapun, mentakrifkan pembina berlebihan dalam subkelas untuk tujuan ini boleh menyusahkan. Selepas mengalih keluar pembina daripada subkelas, pengkompil menimbulkan ralat bahawa pembina super tersirat tidak ditentukan.

Ralat ini timbul kerana Java secara automatik menjana pembina lalai untuk kelas tanpa yang ditakrifkan secara eksplisit. Walau bagaimanapun, apabila kelas asas mengisytiharkan pembina, ia mengatasi kelakuan lalai ini dan subkelas tidak lagi boleh menggunakan pembina tersirat dengan super().

Untuk menyelesaikan isu ini, terdapat dua pilihan:

  • Sediakan Pembina Tanpa Hujah dalam Kelas Asas:
    Oleh mentakrifkan pembina tanpa hujah dalam BaseClass, ia secara berkesan "membangkitkan" pembina lalai. Subkelas kemudiannya boleh melanjutkan kelas asas tanpa perlu menyediakan pembina mereka sendiri.
  • Gunakan Corak Pembina:
    Pendekatan alternatif ialah menggunakan corak pembina. Ini melibatkan mencipta kelas pembina berasingan yang membina contoh kelas asas. Kelas pembina kemudiannya boleh mengendalikan selok-belok hujah pembina dan menghapuskan keperluan untuk pembina subkelas yang berlebihan.

Dengan menggunakan strategi ini, pembangun boleh mengekalkan corak warisan yang diingini sambil menampung ketiadaan pembina dalam subkelas, menyelesaikan ralat "Pembina super tersirat tidak ditentukan" dan mempromosikan kod kebolehselenggaraan.

Atas ialah kandungan terperinci Pembina Super Tersirat Tidak Ditakrifkan: Bagaimana untuk Menyelesaikan Isu Warisan ini 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