„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Super Keyword in Java

Super Keyword in Java

Gepostet am 2025-02-07
Durchsuche:257

super keyword in java

Das Keyword in Java ist eine Referenzvariable, mit der sich auf ein direktes übergeordnetes Klassenobjekt bezieht. Wenn Sie eine Instanz einer Unterklasse erstellen, wird die Instanz der übergeordneten Klasse implizit erstellt und von der Super Referenzvariable verwiesen.

Verwendung von Java Super Keyword

Super Keyword in Java

  1. super wird verwendet, um auf Instanzvariablen der direkten Elternklasse zu verweisen.
  2. wir können das Schlüsselwort
super

verwenden, um auf das Datenmitglied oder das Feld der übergeordneten Klasse zuzugreifen. Wenn die Eltern- und Kinderklasse das gleiche Feld haben, verwenden Sie es.

class Animal { String color = "White"; } Klassenhund erweitert Tier { String color = "schwarz"; void printcolor () { System.out.println (Farbe); System.out.println (Super.Color); } } Klassentestsuper1 { public static void main (String args []) { Hund D = neuer Hund (); d.printcolor (); } }
class Animal {
    String color = "white";
}

class Dog extends Animal {
    String color = "black";

    void printColor() {
        System.out.println(color); // 打印 Dog 类的颜色
        System.out.println(super.color); // 打印 Animal 类的颜色
    }
}

class TestSuper1 {
    public static void main(String args[]) {
        Dog d = new Dog();
        d.printColor();
    }
}
Ausgabe:

] Schwarz Weiß

Im obigen Beispiel haben sowohl Tier- als auch Hundeklassen öffentliche Attributfarbe. Wenn wir die Farbeigenschaft drucken, druckt sie standardmäßig die Farbe der aktuellen Klasse. Um auf die übergeordnete Eigenschaft zuzugreifen, müssen wir das Schlüsselwort

super

verwenden.

  1. super kann verwendet werden, um übergeordnete Klassenmethoden aufzurufen. Das Schlüsselwort
Super

kann auch verwendet werden, um übergeordnete Klassenmethoden aufzurufen. Wenn eine untergeordnete Klasse dieselbe Methode wie die übergeordnete Klasse enthält, sollte sie verwendet werden. Mit anderen Worten, wenn die Methode neu geschrieben wird, wird sie verwendet.

class Animal { void eat () { System.out.println ("Essen ..."); } } Klassenhund erweitert Tier { void eat () { System.out.println ("Brot essen ..."); } void bark () { System.out.println ("Barking ..."); } void work () { Super.eat (); bellen(); } } Klassentestsuper2 { public static void main (String args []) { Hund D = neuer Hund (); D.Work (); } }
class Animal {
    String color = "white";
}

class Dog extends Animal {
    String color = "black";

    void printColor() {
        System.out.println(color); // 打印 Dog 类的颜色
        System.out.println(super.color); // 打印 Animal 类的颜色
    }
}

class TestSuper1 {
    public static void main(String args[]) {
        Dog d = new Dog();
        d.printColor();
    }
}
Ausgabe:

] Essen... Gebell...

Im obigen Beispiel haben sowohl Tier- als auch Hundeklassen die EAT () -Methode. wird der lokalen Methode gegeben. Um die übergeordnete Klassenmethode anzurufen, müssen wir das Schlüsselwort

super

verwenden.

  1. super wird verwendet, um den Konstruktor der Elternklasse aufzurufen. Das Schlüsselwort
Super

kann auch verwendet werden, um den Konstruktor der Elternklasse aufzurufen. Schauen wir uns ein einfaches Beispiel an:

class Animal { Tier() { System.out.println ("Tier wird erstellt"); } } Klassenhund erweitert Tier { Hund() { super(); System.out.println ("Hund wird erstellt"); } } Klassentestsuper3 { public static void main (String args []) { Hund D = neuer Hund (); } }
class Animal {
    String color = "white";
}

class Dog extends Animal {
    String color = "black";

    void printColor() {
        System.out.println(color); // 打印 Dog 类的颜色
        System.out.println(super.color); // 打印 Animal 类的颜色
    }
}

class TestSuper1 {
    public static void main(String args[]) {
        Dog d = new Dog();
        d.printColor();
    }
}
Ausgabe:

] Tier wird erstellt Hund wird erstellt

Hinweis: Wenn es nein

super ()

oder this () Im Konstruktor fügt der Compiler jedem Klassenkonstruktor automatisch hinzu . ]. (Hinzugefügt werden) Es ist bekannt, dass der Compiler den Standardkonstruktor automatisch angibt, wenn ein Konstruktor nicht existiert. Es fügt jedoch auch Super ()

als erste Aussage hinzu. (Hinzugefügt werden)

Ein weiteres Beispiel für das Schlüsselwort Super

, wobei

Super () implizit vom Compiler bereitgestellt wird. (Hinzugefügt werden) class Animal { Tier() { System.out.println ("Tier wird erstellt"); } } Klassenhund erweitert Tier { Hund() { System.out.println ("Hund wird erstellt"); } } Klassentestsuper4 { public static void main (String args []) { Hund D = neuer Hund (); } }

class Animal {
    Animal() {
        System.out.println("animal is created");
    }
}

class Dog extends Animal {
    Dog() {
        System.out.println("dog is created");
    }
}

class TestSuper4 {
    public static void main(String args[]) {
        Dog d = new Dog();
    }
}

] Tier wird erstellt Hund wird erstellt

super

Beispiel: Praktische Anwendung (ergänzt werden) Lassen Sie uns die praktische Anwendung des Keywords Super

sehen. Hier erbt die EMP -Klasse die Personklasse, sodass alle Eigenschaften der Person standardmäßig an EMP geerbt werden. Um alle Eigenschaften zu initialisieren, verwenden wir den Konstruktor der Elternklassen aus der Unterklasse. Auf diese Weise verwenden wir den Konstruktor der Elternklasse wieder.

class Person { int id; Zeichenfolge Name; Person (int id, Zeichenfolge Name) { this.id = id; this.name = name; } } Klasse EMP erweitert die Person { Schwimmergehalt; EMP (int ID, Stringname, Float -Gehalt) { Super (ID, Name); this.Salary = Gehalt; } void display () { System.out.println (ID "" Name "" Gehalt); } } Klassentestsuper5 { public static void main (String [] args) { Emp e1 = neuer Emp (1, "Ankit", 45000f); e1.display (); } }

class Animal {
    Animal() {
        System.out.println("animal is created");
    }
}

class Dog extends Animal {
    Dog() {
        System.out.println("dog is created");
    }
}

class TestSuper4 {
    public static void main(String args[]) {
        Dog d = new Dog();
    }
}

] 1 ankit 45000

Referenz:

https://www.javatpoint.com/super-keyword

] Diese überarbeitete Ausgabe behält die ursprüngliche Bedeutung bei, während sie unterschiedliche Formulierungen und Satzstrukturen verwenden. ]

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3