Rumah > Java > javaTutorial > Bagaimanakah `super()` Mendayakan Invokasi Pembina yang Betul dan Akses Kaedah Induk dalam Warisan Java?

Bagaimanakah `super()` Mendayakan Invokasi Pembina yang Betul dan Akses Kaedah Induk dalam Warisan Java?

Susan Sarandon
Lepaskan: 2024-12-11 03:48:09
asal
165 orang telah melayarinya

How Does `super()` Enable Proper Constructor Invocation and Parent Method Access in Java Inheritance?

Meneroka 'super()': Peranannya dalam Warisan Java

Kata kunci 'super()' Java memainkan peranan penting dalam objek- pengaturcaraan berorientasikan, terutamanya apabila berurusan dengan warisan. Mari kita mendalami pemahaman penggunaan dan keupayaannya.

Memanggil Pembina Induk

'super()' digunakan terutamanya untuk memanggil pembina kelas induk apabila mencipta subkelas baharu objek. Ia memastikan bahawa kod permulaan induk dijalankan sebelum pembina subkelas itu sendiri dilaksanakan.

Apabila 'super()' dipanggil tanpa sebarang argumen, ia lalai untuk memanggil pembina induk tanpa argumen. Ini adalah perlu untuk memastikan permulaan objek yang betul dan keadaan warisan persediaan.

Contoh:

class Parent {
    private String name;

    public Parent() {
        name = "Default parent name";
    }
}

class Child extends Parent {
    public Child() {
        super(); // Calls the Parent constructor with no arguments
    }
}
Salin selepas log masuk

Menyampaikan Argumen kepada Pembina Induk

'super ()' juga boleh digunakan untuk menyampaikan hujah kepada pembina induk. Ini berguna apabila pembina induk mempunyai beberapa kaedah terlebih beban. Dengan menyatakan hujah tertentu, anda boleh memanggil pembina induk yang dikehendaki.

Contoh:

class Parent {
    private String name;

    public Parent(String name) {
        this.name = name;
    }
}

class Child extends Parent {
    public Child(String name) {
        super(name); // Calls the Parent constructor with a name argument
    }
}
Salin selepas log masuk

Kaedah Memanggil Ibu Bapa

Selain menggunakan pembina induk, 'super' juga boleh digunakan untuk mengakses kaedah dan pembolehubah kelas induk. Ini membenarkan subkelas memanjangkan atau mengatasi gelagat yang diwarisi.

Untuk memanggil kaedah induk, gunakan sintaks 'super.methodName()'.

Contoh:

class Parent {
    public void printName() {
        System.out.println("Parent's name: " + name);
    }
}

class Child extends Parent {
    public void printChildName() {
        super.printName(); // Calls the printName() method from the Parent class
    }
}
Salin selepas log masuk

Untuk tutorial terperinci dan penjelasan lanjut, sila rujuk pautan sumber yang disediakan.

Atas ialah kandungan terperinci Bagaimanakah `super()` Mendayakan Invokasi Pembina yang Betul dan Akses Kaedah Induk dalam Warisan Java?. 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