[JavaSE-Spalte 62] Vererbung, eine wichtige Funktion in der objektorientierten JAVA-Programmierung

Homepage des Autors : Designer Xiao Zheng
Kurze Einführung des Autors : 3 Jahre Erfahrung in der JAVA-Full-Stack-Entwicklung mit Schwerpunkt auf JAVA-Technologie, Systemanpassung, Fernberatung, gewidmet der digitalen Transformation von Unternehmen, zertifizierter Dozent des CSDN College und des Blue Bridge Cloud-Kurses.
Hauptrichtung : Vue, SpringBoot, WeChat-Applet

Dieser Artikel erläutert das Konzept und die Syntax der objektorientierten Vererbung in Java und enthält Beispielcode. Vererbung ist eine wichtige Funktion in der objektorientierten Programmierung, die es einer Klasse ermöglicht, die Eigenschaften und Methoden einer anderen Klasse zu erben.

Fügen Sie hier eine Bildbeschreibung ein


1. Was ist Vererbung?

Vererbung ist eine wichtige Funktion in der objektorientierten Programmierung, die es einer Klasse (Unterklasse) ermöglicht, die Eigenschaften und Methoden einer anderen Klasse (Elternklasse) zu erben .

Unterklassen können die öffentlichen Mitgliedsvariablen und -methoden der übergeordneten Klasse erben und auch die Methoden der übergeordneten Klasse überschreiben oder eigene Mitgliedsvariablen und -methoden hinzufügen.

Der Hauptzweck der Vererbung besteht darin, die Wiederverwendung und Erweiterung von Code zu erreichen. Durch Vererbung können Unterklassen vorhandene Eigenschaften und Methoden von der übergeordneten Klasse erben und so das wiederholte Schreiben desselben Codes vermeiden. Unterklassen können Funktionen auf der Grundlage der Vererbung erweitern, ihre eigenen einzigartigen Eigenschaften und Methoden hinzufügen und mehr Funktionen erreichen.

In Java wird das Schlüsselwort verwendet, extendsum die Vererbungsbeziehung der Klasse zu realisieren, und das grammatikalische Format der untergeordneten Klasse, die die übergeordnete Klasse erbt, ist wie folgt.

public class 子类名 extends 父类名 {
    
    
    // 子类的成员变量和方法
}

Durch Vererbung können Unterklassen auf öffentliche Mitgliedsvariablen und -methoden in der übergeordneten Klasse zugreifen, einschließlich geerbter und in der übergeordneten Klasse definierter Variablen.

Die Vererbung hat folgendes 6 66 Schlüsselkonzepte und -merkmale, bitte studieren Sie sie sorgfältig.

  • Die Unterklasse erbt die Eigenschaften der übergeordneten Klasse und kann die Eigenschaften und Methoden der übergeordneten Klasse erhalten.
  • Unterklassen können die Methoden der übergeordneten Klasse überschreiben, um ihr eigenes einzigartiges Verhalten zu implementieren.
  • Unterklassen können ihre eigenen Mitgliedsvariablen und -methoden hinzufügen .
  • Unterklassen können direkt auf nichtprivate Mitglieder der Oberklasse zugreifen .
  • Die Vererbungsbeziehung zwischen der Unterklasse und der übergeordneten Klasse ist unidirektional , und die übergeordnete Klasse kann die Eigenschaften und Methoden der Unterklasse nicht erben.
  • Java unterstützt keine Mehrfachvererbung , d. h. eine Klasse kann nur von einer übergeordneten Klasse erben.

Vererbung ist ein wichtiger Mechanismus in der objektorientierten Programmierung, der die Möglichkeit bietet, Code wiederzuverwenden und zu erweitern und so den Programmentwurf flexibler und wartbarer zu machen.

Fügen Sie hier eine Bildbeschreibung ein


2. Warum erben?

Die Verwendung der Vererbung in Java hat die folgenden 5 55 Vorteile, bitte studieren Sie sie sorgfältig.

  1. Wiederverwendung von Code : Durch Vererbung können Unterklassen die Eigenschaften und Methoden der übergeordneten Klasse erben, wodurch wiederholtes Schreiben desselben Codes vermieden wird. Unterklassen können die Eigenschaften und Methoden der übergeordneten Klasse direkt verwenden, wodurch die Codemenge reduziert und die Wiederverwendbarkeit des Codes verbessert wird.
  2. Einheitliche Schnittstelle : Durch Vererbung kann eine Gruppe verwandter Klassen in einer Klassenfamilie zusammengefasst werden, sodass sie dieselbe Schnittstelle und dasselbe Verhalten aufweisen. Dies kann die Lesbarkeit und Wartbarkeit des Codes verbessern und das Programmdesign standardisierter und einheitlicher machen.
  3. Erweiterbarkeit : Durch Vererbung können Funktionen auf Basis bestehender Klassen erweitert werden. Unterklassen können ihre eigenen Eigenschaften und Methoden hinzufügen, die Methoden der übergeordneten Klasse überschreiben und weitere Funktionen erreichen. Auf diese Weise können Unterklassen erweitert werden, um neuen Anforderungen gerecht zu werden, ohne den ursprünglichen Code zu ändern.
  4. Polymorphismus : Vererbung ist die Grundlage für Polymorphismus. Auf das Unterklassenobjekt kann über die Referenzvariable der übergeordneten Klasse verwiesen werden, sodass eine einheitliche Verarbeitung verschiedener Unterklassenobjekte realisiert werden kann. Polymorphismus erhöht die Flexibilität und Skalierbarkeit des Codes.
  5. Wartbarkeit : Durch Vererbung können verwandte Klassen zusammen organisiert werden, wodurch der Code klarer und verständlicher wird. Wenn ein Teil des Codes geändert werden muss, muss nur der Code der übergeordneten Klasse oder Unterklasse geändert werden, ohne dass sich dies auf andere Teile auswirkt, was die Wartbarkeit des Codes verbessert.

Zusammenfassend ist Vererbung ein wichtiger Mechanismus in der objektorientierten Programmierung, der die Wiederverwendung, Erweiterung und Flexibilität von Code ermöglicht. Durch Vererbung kann die Coderedundanz reduziert, die Lesbarkeit und Wartbarkeit des Codes verbessert und das Programmdesign stärker standardisiert und vereinheitlicht werden.

Fügen Sie hier eine Bildbeschreibung ein


3. So erben Sie

In Java werden Schlüsselwörter verwendet, extendsum die Vererbungsbeziehung von Klassen zu implementieren. Das Folgende ist ein Beispielcode. Bitte kopieren Sie ihn und führen Sie ihn lokal aus.

// 父类
class Animal {
    
    
    protected String name;
    
    public Animal(String name) {
    
    
        this.name = name;
    }
    
    public void eat() {
    
    
        System.out.println(name + " is eating.");
    }
}
// 子类
class Dog extends Animal {
    
    
    private String breed;
    
    public Dog(String name, String breed) {
    
    
        super(name);
        this.breed = breed;
    }
    
    public void bark() {
    
    
        System.out.println(name + " is barking.");
    }
}
// 测试类
public class Main {
    
    
    public static void main(String[] args) {
    
    
        Dog dog = new Dog("Tommy", "Labrador");
        dog.eat(); // 调用父类的方法
        dog.bark(); // 调用子类的方法
    }
}

Im obigen Code Animalist die Klasse die übergeordnete Klasse und Dogdie Klasse die untergeordnete Klasse. Die Unterklasse erbt die Eigenschaften und Methoden der übergeordneten Klasse Dogüber Schlüsselwörter. Verwenden Sie in der Konstruktionsmethode der Unterklasse das Schlüsselwort, um die Konstruktionsmethode der Oberklasse aufzurufen und die Eigenschaften der Oberklasse zu initialisieren. Unterklassen können auch ihre eigenen Mitgliedsvariablen und -methoden definieren, z. B. die Methoden und im Beispielcode.extendsAnimalsuperbreedbark()

In Mainder Klasse erstellen wir ein DogObjekt und rufen Methoden der Oberklasse und Unterklasse auf. Durch Vererbung können Unterklassen auf die Eigenschaften und Methoden der übergeordneten Klasse zugreifen und auch ihre eigenen einzigartigen Funktionen hinzufügen.

Das Obige ist ein einfaches Beispiel, das zeigt, wie die extendsKlassenvererbung implementiert wird. Durch Vererbung können wir die Wiederverwendung und Erweiterung von Code realisieren und so das Programmdesign flexibler und wartbarer machen.

Fügen Sie hier eine Bildbeschreibung ein


Viertens Vererbung und Kapselung, polymorphe Verbindung

In Java sind Vererbung, Kapselung und Polymorphismus 3 3 Aspekte der objektorientierten ProgrammierungEs gibt drei wichtige Konzepte, die eng miteinander verbunden sind.

  1. Vererbung und Kapselung : Sowohl Vererbung als auch Kapselung sind grundlegende Merkmale der objektorientierten Programmierung und können in Verbindung miteinander verwendet werden. Durch die Vererbung wird die Wiederverwendung und Erweiterung von Code durch die Erweiterung der Eigenschaften und Methoden bestehender Klassen erreicht, während die Kapselung die internen Implementierungsdetails von Klassen verbirgt und externe Schnittstellen zum Schutz von Daten und Methoden bereitstellt, wodurch die Codesicherheit und Wartbarkeit verbessert wird. Durch Vererbung können die gekapselten Eigenschaften und Methoden der übergeordneten Klasse geerbt werden, und diese gekapselten Mitglieder können in der Unterklasse verwendet werden. Durch den kombinierten Einsatz von Vererbung und Kapselung kann ein modulareres und erweiterbareres Codedesign erreicht werden.
  2. Vererbung und Polymorphismus : Vererbung und Polymorphismus sind zwei wichtige Konzepte in der objektorientierten Programmierung, die durch Klassenhierarchien und Methodenumschreibung implementiert werden. Durch Vererbung können Unterklassenobjekte als übergeordnete Klassenobjekte betrachtet werden, wodurch Polymorphismus erreicht wird. Polymorphismus ermöglicht die Verwendung von Referenzvariablen der übergeordneten Klasse, um auf Objekte der untergeordneten Klasse zu verweisen. Auf diese Weise kann die einheitliche Verarbeitung von Objekten verschiedener untergeordneter Klassen realisiert werden. Die Kombination aus Vererbung und Polymorphismus kann die Flexibilität und Skalierbarkeit des Codes verbessern und das Programmdesign besser an die objektorientierten Eigenschaften anpassen.

Vererbung, Kapselung und Polymorphismus sind Kernkonzepte der objektorientierten Programmierung und gemeinsam fördern sie die Wiederverwendung, Kapselung und Flexibilität von Code. Durch die richtige Anwendung von Vererbung, Kapselung und Polymorphismus können Sie Code mit klarer Struktur, Skalierbarkeit und Wartbarkeit entwerfen und die Entwicklungseffizienz und Codequalität verbessern.

Fügen Sie hier eine Bildbeschreibung ein


5. Vererbte Interviewfragen

1. Was ist Vererbung in Java?

Antwort: Vererbung ist ein Konzept in der objektorientierten Programmierung, das es einer Klasse (sogenannte Unterklasse oder abgeleitete Klasse) ermöglicht, die Eigenschaften und Methoden einer anderen Klasse (sogenannte übergeordnete oder Basisklasse) zu erben.

2. Welche Vorteile bietet eine Vererbung?

Antwort: Die Vererbung hat folgende Vorteile:

  • Code-Wiederverwendung : Unterklassen können die Eigenschaften und Methoden der übergeordneten Klasse erben, wodurch wiederholtes Schreiben desselben Codes vermieden wird.
  • Einheitliche Schnittstelle : Unterklassen können die Schnittstelle und das Verhalten der übergeordneten Klasse gemeinsam nutzen, wodurch das Programmdesign standardisierter und einheitlicher wird.
  • Erweiterbarkeit : Unterklassen können Funktionen basierend auf der übergeordneten Klasse erweitern und neue Eigenschaften und Methoden hinzufügen.
  • Polymorphismus : Unterklassenobjekte können über Referenzvariablen der übergeordneten Klasse referenziert werden, um eine einheitliche Verarbeitung verschiedener Unterklassenobjekte zu erreichen.

3. Wie kann die Erbschaftsbeziehung realisiert werden?

Antwort: In Java werden Schlüsselwörter verwendet, extendsum Vererbungsbeziehungen zu implementieren. Unterklassen extendserben die Eigenschaften und Methoden der übergeordneten Klasse über Schlüsselwörter.

4. Ist in Java eine Mehrfachvererbung möglich?

Antwort: Java unterstützt keine Mehrfachvererbung. Eine Klasse kann nur von einer übergeordneten Klasse erben. Allerdings unterstützt Java die Mehrfachvererbung von Schnittstellen, eine Klasse kann mehrere Schnittstellen implementieren.

5. Was ist die Vererbungskette?

Antwort: Die Vererbungskette bezieht sich auf die hierarchische Struktur, die aus mehreren Klassen in der Vererbungsbeziehung besteht. Jede Unterklasse erbt direkt oder indirekt von einer übergeordneten Klasse und bildet so eine Vererbungskette.

6. Kann ich die letzte Klasse in Java erben?

Antwort: Nein. Endgültige Klassen in Java können nicht vererbt werden.

7. Kann ich private Mitglieder und Konstruktoren in Java erben?

Antwort: Nein. Private Mitglieder und Konstruktoren können nicht vererbt werden und Unterklassen können nicht direkt auf die privaten Mitglieder und Konstruktoren der übergeordneten Klasse zugreifen.

8. Was ist der Unterschied zwischen Vererbung und Zusammensetzung?

Antwort: Bei der Vererbung geht es darum, die Wiederverwendung und Erweiterung von Code durch Erweiterung der Eigenschaften und Methoden vorhandener Klassen zu realisieren, während bei der Komposition Objekte vorhandener Klassen als Mitglieder neuer Klassen verwendet werden sollen, um die Wiederverwendung von Code zu realisieren. Die Vererbung ist is-arelational (eine Unterklasse ist ein Sonderfall einer übergeordneten Klasse), während die Zusammensetzung has-arelational ist (eine neue Klasse hat ein Objekt einer vorhandenen Klasse).


6. Zusammenfassung

In diesem Artikel werden das Konzept und die Syntax der objektorientierten Vererbung in Java erläutert und Beispielcodes bereitgestellt. Im nächsten Blog werde ich die Wissenspunkte des objektorientierten Polymorphismus in Java erläutern.

Fügen Sie hier eine Bildbeschreibung ein

Ich denke du magst

Origin blog.csdn.net/qq_41464123/article/details/132034465
Empfohlen
Rangfolge