„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 > Vererbung und Polymorphismus in Java: Verwendung von Superklassen und Unterklassen

Vererbung und Polymorphismus in Java: Verwendung von Superklassen und Unterklassen

Gepostet am 2025-02-06
Durchsuche:472

In diesem Artikel wird erläutert, wie Javas Erbe eine "IS-A" -Be Beziehung zwischen Superklassen und Unterklassen hat, sodass Unterklassen die Funktionalität der Superklassen erben und anpassen können. Durch die Verwendung von Polymorphismus können Unterklassen eindeutige Verhaltensweisen definieren und die Wiederverwendung und Flexibilität von Code in der objektorientierten Programmierung ermöglichen.


In Java ist die Beziehung zwischen Superklassen (übergeordnete Klasse) und Unterklassen (untergeordnete Klasse oder abgeleitete Klasse) in der Vererbung eine IS-A-Beziehung, die impliziert, dass die Unterklasse eine spezielle Version der Superklasse ist, die die Funktionalität erbt (Restriktionen können können angewendet werden) einer Klasse, aus der sie abgeleitet ist (CSU Global, N.D.). Mit anderen Worten, wenn die Klasse B von Klasse A erbt, dann ermöglicht die Klasse B der Klasse B „IS A“ -Typ A. Mit dieser Beziehung kann die von Klasse A bereitgestellte Funktionen alle Funktionen verwenden (Einschränkungen können angewendet werden) und addieren gleichzeitig eigene eigene Spezifische Funktionen oder/und durch Überschreiben einiger oder aller Funktionen der Klasse A. Die Fähigkeit der untergeordneten Klasse, Funktionalität zu überschreiben, ist eine Form des Polymorphismus.

„Die Wörterbuchdefinition des Polymorphismus bezieht sich auf ein Prinzip in der Biologie, in dem ein Organismus oder eine Art viele verschiedene Formen oder Stadien haben kann. Dieses Prinzip kann auch auf objektorientierte Programmierung und Sprachen wie die Java-Sprache angewendet werden. Unterklassen einer Klasse können ihr eigenes einzigartiges Verhalten definieren und dennoch einen Teil der gleichen Funktionalität der übergeordneten Klasse teilen “(die Java ™ -Tutorials, n.d.) Dies ist besonders vorteilhaft, wenn es um mehrere Objekte aus verschiedenen Unterklassen handelt, die einen gemeinsamen Superklassen -Typ teilen.

Zum Beispiel: Hunde, Katzen und Eulen sind Tiere:

SuperClass

public class Animal {
    public void makeSound() {
        System.out.println("Makes a Sound");
    }
}

Unterklasse der Tiere

public class Domesticated extends Animal {
    public void friendly() {
        System.out.println("This animal is friendly.");
    }
}

Unterklasse von domestiziert

public class Undomesticated extends Animal {
    public void notFriendly() {
        System.out.println("This animal is not friendly.");
    }
}

Unterklasse von domestiziert

public class Cat extends Domesticated {
    @Override
    public void makeSound() {
        System.out.println("Meow");
    }
}

Unterklasse von Unermestig

public class Owl extends Undomesticated {
    @Override
    public void makeSound() {
        System.out.println("Hoots");
    }
}

Hauptklasse, um das Ergebnis auszugeben

public class inheritanceExample {
    public static void main(String[] args) {
        Dog myDog = new Dog();
        Cat myCat = new Cat();
        Owl redOwl = new Owl();

        System.out.println("MY Dog:");
        myDog.makeSound(); // Outputs: Bark
        myDog.friendly();  // Outputs: This animal is friendly.
        System.out.println();

        System.out.println("My Cat:");
        myCat.makeSound(); // Outputs: Meow
        myCat.friendly();  // Outputs: This animal is friendly.
        System.out.println();

        System.out.println("Red Owl:");
        redOwl.makeSound(); // Outputs: Hoot
        redOwl.notFriendly(); // Outputs: This animal is not friendly.
     }
}

HINWEIS: Die makeound () -Methoden im Hund- und Katzenklassen überschreiben die makeound () -Methode in der Tierklasse.

Zusätzlich ist die Hundeklasse eine Unterklasse der domestizierten Klasse, die eine Unterklasse der Tierklasse ist.

Kind von '→'
Inheritance and Polymorphism in Java: Using Superclasses and Subclasses

In Java kann eine Unterklasse nur eine Superklasse haben, zum Beispiel kann die Hundeklasse keine Superklasse domestiziert und ein Superklassentier haben, das Folgende ist nicht erlaubt.
Inheritance and Polymorphism in Java: Using Superclasses and Subclasses

Mit anderen Worten, eine Unterklasse kann nur eine Superklasse haben, und sie dürfen nicht mehrere Eltern, Großeltern oder Urgroßeltern haben.
Inheritance and Polymorphism in Java: Using Superclasses and Subclasses

Zusammenfassend lässt sich sagen, dass Javas Erbschaft Unterklassen die Funktionalität von Superklassen nutzen und erweitert, die Beziehung „IS-A“ verkörpert und Polymorphismus erleichtert. Dies verbessert die Wiederverwendbarkeit, Flexibilität und Konsistenz von Code, indem sie spezifische Verhaltensweisen in Unterklassen aktivieren und gleichzeitig gemeinsame Merkmale in einer gemeinsamen Superklasse beibehalten.


Referenzen:

cus global (n.d.). Modul 1: Arbeiten mit Vererbung [interaktiver Vortrag]. In der Colorado State University Global, CSC372: Programmierung II, Informatikabteilung. Leinwand. Abgerufen am 8. Juni 2024 von https://csuglobal.instructure.com/courses/94948/pages/module-1-overview?module_item_id=4868813..&&]

Die Java ™ -Tutorials (n.d.). Lernen der Java -Sprache: Schnittstellen und Vererbung. Orakel. Abgerufen am 8. Juni 2024, vonhttps: //docs.oracle.com/javase/tutorial/java/iandi/polymorphism.html


ursprünglich bei Alex.omegapy auf Medium veröffentlicht, das am 1. November 2024 von Level Up Coding veröffentlicht wurde.

Freigabeerklärung Dieser Artikel ist reproduziert unter: https://dev.to/alex_ricciardi/inheritance-and-polymorphism-in-java-using --uperclasses-and-Subclasseses-12jn?1 Wenn es eine Verletzung gibt. löschen
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