Mengalih keluar Pembina Lewah dalam Subkelas dengan Pembina Lalai
Apabila bekerja dengan warisan dalam Java, adalah perkara biasa untuk menemui "Pembina super tersirat tidak ditentukan untuk ralat pembina lalai. Ini berlaku apabila subkelas tidak mentakrifkan pembina secara eksplisit tetapi memanjangkan kelas asas dengan pembina berparameter.
Untuk memahami ralat ini, adalah penting untuk menjelaskan tingkah laku pembina dalam Java:
Dalam contoh anda, BaseClass mempunyai pembina berparameter tetapi tiada pembina lalai. Ini bermakna bahawa ACSubClass tidak mempunyai pembina lalai dan mesti mentakrifkannya secara eksplisit.
Walau bagaimanapun, kerana BaseClass mempunyai pembina berparameter, ia tidak secara tersirat mempunyai pembina lalai. Ini mengakibatkan ralat kerana ACSubClass tidak boleh mewarisi pembina yang tidak wujud daripada BaseClass.
Terdapat dua cara untuk menangani perkara ini:
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'Implicit Super Constructor is Undefined\' dalam Subkelas Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!