Vererbung ist eine Eigenschaft der JAVA-Sprache, bei der die Funktionen und Mitglieder einer Klasse von anderen Klassen geerbt und verwendet werden können. Dies trägt dazu bei, die Verwendung von sauberem Code und die Wiederverwendbarkeit voranzutreiben. JAVA bietet verschiedene Arten der Vererbung, jedoch Mehrfachvererbungen. Um diesen Mangel zu beheben, nutzt JAVA die hybride Vererbung mithilfe von Schnittstellen. Hybride Vererbung ist eine Kombination verschiedener Arten von Vererbungen (insbesondere einstufige und mehrstufige Vererbung).
Starten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
Zum Beispiel gibt es verschiedene Klassen mit den Namen „A“, „B“, „C“ und „D“. Angenommen, die Klassen „A“ und „B“ erweitern die Klasse „C“. Außerdem erweitert eine weitere Klasse, „D“, die Klasse „A“. Hier ist die Klasse „A“ eine übergeordnete Klasse für die untergeordnete Klasse „D“ und auch eine untergeordnete Klasse für die übergeordnete Klasse „C“. Dies kann anhand des folgenden Diagramms veranschaulicht werden:
Die Syntax für die Hybridvererbung unterscheidet sich nicht von der normalen Vererbung. Das einzige, was hier zusätzlich zu beachten ist, ist, dass mehr als eine Vererbung im selben Programm implementiert wird, um das Ergebnis zu erzielen. Diese Funktionalität soll den Vorteil haben, Funktionalitäten zusätzlich zu den vorhandenen hinzuzufügen und so die Arbeit von Programmierern zu reduzieren, Code von Grund auf neu zu schreiben.
Erklärung: Der folgende Codeausschnitt demonstriert die Funktionsweise der Hybridvererbung in JAVA. Im folgenden Code werden vier Klassen mit dem Funktionsnamen display() deklariert. Die Funktion Display() gibt void zurück, ruft jedoch intern die Funktion println() auf, um die Zeichenfolge auf dem Ausgabebildschirm zu drucken. Die Funktion Println() ist eine Standardfunktion von JAVA, die eine Java-Eingabe-Ausgabe-Bibliothek verwendet, um eine Zeichenfolge auf dem Ausgabebildschirm zu drucken. Es benötigt eine Zeichenfolge als Parameter, die unter Semikolons erfasst wird.
Die Hauptklasse hier ist test4. Die Hauptklasse ist diejenige, in der die Hauptfunktion deklariert ist. Hier wird die Hauptklasse wie folgt deklariert:
public static void main(String args[])
Diese Hauptfunktion verwendet eine Zeichenfolge als Eingabeparameter und gibt void zurück. Diese Funktion ist standardmäßig öffentlich und die erste Funktion, die aufgerufen wird, wenn das Programm ausgeführt wird. Die Hauptfunktion hat ein Objekt der Hauptklasse „test4“ angelegt. Das Objekt der Klasse test4 ist „object“. Dieses Objekt ruft eine Funktion display auf. Der String in der Anzeigefunktion von test4 wird daher gedruckt.
Hier ist zu beachten, dass die Klasse test4 die Eigenschaft der Klasse test1 erbt. Test1 wiederum erbt die Eigenschaft von test3. Test 2 erbt außerdem die Eigenschaft von test3. Daher gibt es zwei Klassen, die Test 3 erben: Test 1 und Test2. Hier können wir also verschiedene Arten der Vererbung sehen, wie eine einzelne und eine hierarchische Vererbung. Der obige Fall ist ein Beispiel für eine hierarchische und einzelne Vererbung.
Klasse test1 und test2 erweitern Klasse test3 → Hierarchische Vererbung
Klasse test4 erweitert Klasse test1 → Einzelvererbung
Der folgende Code kann verwendet werden, um die Funktionsweise zu verstehen.
Code:
//Class test3 which works as a parent class for other two child classes. class test3 { // this function is used to class print function. This function name is used in other class as well but with other string in it. This feature in JAVA is called as function overloading. public void display() { System.out.println("the program control is in class test3"); //JAVA standard function to print the string in the output screen. } } //Here test1 class in extending test3’s function. This is hierarchal inheritance. class test1 extends test3 { //JAVA function overloading. Same function name is used again in the other class. public void display() { System.out.println("the program control is in class test1"); } } //Here test2 class in extending test3’s function. This is hierarchal inheritance. class test2 extends test3 { public void display() { System.out.println("the program control is in class test2"); } } //This is the main class which is extending test1. Such inheritance is called a single inheritance. class Main extends test1 { public void display() { System.out.println("The program control is in class test4 and It is an example \n to demonstrate the working of hybrid inheritance in JAVA."); } public static void main(String args[]){ //”object” objet is created by instantiating test4 class. His class is then used to call display() function from class test4. Main object = new Main(); object.display(); } }
Ausgabe:
Da es sich bei der Hauptklasse in test4 handelt, sollte das Java-Programm unter dem Namen „test4.java“ gespeichert werden.
In CMD müssen wir zu dem Pfad navigieren, in dem diese Datei gespeichert ist. In diesem Fall habe ich die Datei auf dem Desktop gespeichert. Kompilieren Sie dann das Programm, indem Sie „JAVAC test4.JAVA“ eingeben. Sobald es kompiliert ist, ist eine neue Datei mit dem Desktopnamen „test4.class“ zu sehen. Dies ist die ausführbare Datei von JAVA. Sie wird vom System unter demselben Namen wie der Hauptdateiname gespeichert, jedoch ändert sich nur die Bezeichnung von .java in .class. Dann können wir die Datei mit dem Befehl „JAVA test4“ ausführen und das Ausgabeergebnis finden.
Hybride Vererbung ist eine großartige Möglichkeit, die Funktionalitäten zweier verschiedener Vererbungsarten in einem zu erreichen. Seine von JAVA bereitgestellte Funktion ermöglicht die Wiederverwendbarkeit von Code. JAVA unterstützt keine Mehrfachvererbung, diese Funktionalität kann jedoch mithilfe von Schnittstellen zusammen mit der Vererbung genutzt werden. Dies ist sehr nützlich, wenn wir versuchen, Standardpraktiken wie Code-Wiederverwendbarkeit, Polymorphismus und Kapselung in unseren Code aufzunehmen, um den Industriestandards zu entsprechen. Diese Praktiken gewährleisten eine einfache Codepflege über einen längeren Zeitraum.
Das obige ist der detaillierte Inhalt vonHybride Vererbung in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!