Rumah  >  Artikel  >  Java  >  Kata Kunci Super di Jawa

Kata Kunci Super di Jawa

王林
王林asal
2024-08-30 15:44:39367semak imbas

Super ialah kata kunci yang digunakan untuk memanggil fungsi atau kaedah dalam superclass. Ini akan ditakrifkan di dalam subkelas. Kaedah yang hanya awam dan dilindungi boleh dipanggil dengan menggunakan kata kunci ini. Dengan kata lain, kaedah persendirian dan kaedah statik tidak boleh dipanggil menggunakan ini. Kata kunci super dalam java juga boleh digunakan untuk memanggil pembina kelas induk. Sintaks, contoh dan butiran lanjut kata kunci super akan dibincangkan dalam bahagian berikut.

Sintaks

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

super.<<method-name>> or super([0 or more arguments]);

Bagaimanakah Super Keyword berfungsi dalam Java?

Seperti yang telah disebutkan, super boleh digunakan pada beberapa kesempatan.

  • Untuk merujuk pembolehubah contoh kelas induk segera.
  • Untuk merujuk kepada kaedah kelas induk segera.
  • Untuk merujuk kepada pembina kelas induk terdekat.

1. Untuk Merujuk Pembolehubah Contoh Kelas Induk Terdekat

Jika kelas induk dan anak mempunyai ahli data yang sama, kata kunci Super boleh digunakan untuk mengakses medan atau ahli data kelas induk. Kekaburan untuk Mesin Maya Java boleh berlaku dalam kes ini.

Contoh:

Kod:

class A {
protected String name="ann";
}
class B extends A {
public String name="Anna";
public void hello() {
System.out.println("I am  " + name);
System.out.println("I am  " + super.name);
}
}

Di sini, dua kelas A dan B, mempunyai nama medan sepunya. Fungsi printType() dalam kelas anak menggunakan kata kunci super untuk merujuk kepada medan dalam kelas induk.

2. Untuk Merujuk Kaedah Kelas Ibu Bapa Terdekat

Penggantian kaedah ialah proses yang mana kelas anak mengisytiharkan fungsi atau kaedah yang sama yang sudah tersedia dalam kelas induk. Katakan, jika panggilan ke kaedah berlaku daripada objek kelas kanak-kanak, maka kaedah dalam kelas kanak-kanak sahaja akan dipanggil. Untuk mengakses kaedah induk, kata kunci super boleh digunakan.

Contoh:

Kod:

class A {
protected String name="ann";
public void hello() {
System.out.println("I am  " + name);
}
}
class B extends A {
public String name="Anna”;
public void hello() {
System.out.println("I am  " + name);
}
public void test()
{
hello();
super.hello();
}
}

Di sini, dua kelas, A dan B, mempunyai kaedah yang sama hello(). Dengan bantuan kata kunci super dalam fungsi test(), adalah mungkin untuk mengakses kaedah hello() kelas induk.

3. Untuk Merujuk Pembina Kelas Induk Terdekat

Sudah diketahui bahawa pembina (lalai) akan dipanggil secara automatik apabila objek kelas dicipta. Kata kunci super boleh digunakan untuk memanggil pembina kelas super secara eksplisit daripada pembina subkelas. Pastikan super hanya digunakan di dalam pembina subkelas, dan ia adalah pernyataan pertama di dalamnya.

Contoh:

Kod:

class A {
//constructor of parent class
A() {    System.out.println("I am Kavya Madhavan");
}
}
//child class
class B extends A {
//constructor of child class
B() {
super();
System.out.println("I am Dileep Menon");  } }

Contoh Super Keyword dalam Java

Di bawah ialah contoh berbeza yang disebut:

Contoh #1

Dalam atur cara berikut, nama pembolehubah sepunya hadir dan super digunakan untuk memanggil pembolehubah dalam kelas induk.

Kod:

//Java program to illustrate Super keyword to refer instance variable
//parent class
class A {
protected String name="ann";
}
//child classs
class B extends A {
public String name="Anna";//variable which is same in parent class
//sample method
public void hello() {
System.out.println("I am  " + name);
System.out.println("I am  " + super.name);
}
}
//main class
public class SuperExample {
public static void main(String[] args) {
B objb=new B();//object of child class
objb.hello();//call the method in child class
}
}

Output:

Kata Kunci Super di Jawa

Contoh #2

Atur cara ini membantu dalam menunjukkan kata kunci super sambil merujuk kepada kaedah yang sama dalam kelas induk. Di sini, hello() ialah kaedah yang tersedia dalam kedua-dua kelas.

Kod:

//Java program to illustrate Super keyword to refer same method in parent class
//parent class
class A {
protected String name="ann";
public void hello() {
System.out.println("I am  " + name);
}
}
//child classs
class B extends A {
public String name="Anna";//variable which is same in parent class
//sample method which is same in parent class
public void hello() {
System.out.println("I am  " + name);
}
//method to call the hello() method in parent and child class
public void test()
{
hello();
super.hello();
}
}
//main class
public class SuperExample {
public static void main(String[] args) {
B objb=new B();//object of child class
objb.test();//call the method in child class
} }

Output:

Kata Kunci Super di Jawa

Contoh #3

Atur cara ini memanggil pembina kelas induk menggunakan kata kunci super.

Kod:

//Java program to illustrate Super keyword to refer constructor in parent class
//parent class
class A {
//constructor of parent class
A() {
System.out.println("I am Kavya Madhavan");
}
}
//child class
class B extends A {
//constructor of child class
B() {
super();
System.out.println("I am Dileep Menon");
}
}
//main class
public class SuperExample {
public static void main(String[] args) {
B objb=new B();//object of child class
}
}

Output:

Kata Kunci Super di Jawa

Contoh #4

Atur cara ini menunjukkan penggunaan kata kunci super untuk merujuk kepada pembina parameter bagi kelas induk.

Kod:

//Java program to illustrate Super keyword to refer parameterised constructor in parent class
//parent class
class A {
//constructor of parent class
A() {
System.out.println("I am Kavya Madhavan");
}
//parameterised constructor
A(String name) {
System.out.println("I am " + name);
}
}
//child class
class B extends A {
//constructor of child class
B() {
super("Renuka");
System.out.println("I am Dileep Menon");
}
}
//main class
public class SuperExample {
public static void main(String[] args) {
B objb=new B();//object of child class
}
}

Output:

Kata Kunci Super di Jawa

Kesimpulan

Super ialah kata kunci dalam Java yang digunakan untuk merujuk kepada kaedah atau fungsi, pembolehubah contoh atau atribut dan pembina dalam kelas induk. Jika pembina tidak diisytiharkan, pengkompil secara automatik mencipta pembina lalai. Begitu juga, Pengkompil memanggil super() secara automatik jika ia tidak diisytiharkan. Dalam dokumen ini, beberapa aspek kata kunci super diterangkan secara terperinci.

Atas ialah kandungan terperinci Kata Kunci Super 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
Artikel sebelumnya:Berlebihan Fungsi dalam JavaArtikel seterusnya:Berlebihan Fungsi dalam Java