Vererbungsarten in Java mit Beispielen
Veröffentlicht: 2022-06-26Die Vererbung in Java ermöglicht es Entwicklern, neue Klassen mit den vorhandenen zu erstellen. Es ermöglicht die Wiederverwendbarkeit von Code. Vererbung kann sowohl Einzelvererbung als auch Vererbung auf mehreren Ebenen sein. Vererbung verringert die Redundanz des Codes, macht ihn lesbarer und wartbarer und fungiert somit als Werkzeug zur Steigerung der Softwarequalität.
Bedeutung der Erbschaft
In Java ist Vererbung die Methode, durch die eine Klasse die Eigenschaften und Funktionalitäten einer anderen Klasse erwirbt. Vererbung spart Zeit, verringert Redundanz, macht Code lesbarer, verständlicher und wartbarer und dient als Werkzeug zur Steigerung der Softwarequalität. Vererbung hat viele wichtige Anwendungen in der Java-Programmiersprache. Vererbung ermöglicht Entwicklern, neue Klassen unter Verwendung vorhandener zu erstellen. Vererbte Klassen fungieren als Vorlagen oder Blaupausen. Vererbung bietet Wiederverwendbarkeit von Software. Vererbte Klassen fungieren als Eltern-Kind-Beziehung unabhängig.
Die Vererbungshierarchie bezeichnet eine Eltern-Kind-Beziehung zwischen den verschiedenen Vererbungsebenen. Die oberste Vererbungsebene wird als „Superklasse“ oder „Elternklasse“ bezeichnet.
Lernen Sie Softwareentwicklungskurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.
Syntax der Java-Vererbung
Klasse Unterklassenname erweitert Oberklassenname
{
//Methoden und Felder
}
Das erweiterte Schlüsselwort gibt an, dass Sie eine neue Klasse erstellen, die die gesamte Funktionalität von ihrer übergeordneten Klasse erbt. Es bedeutet „erhöhen“ oder verbessern, was bereits vorhanden ist.
Beispiel: Im folgenden Vererbungsbeispiel ist die Klasse Bicycle eine Basisklasse, die Klasse MountainBike eine abgeleitete Klasse, die die Bicycle-Klasse erweitert, und die Klasse Test eine Treiberklasse zum Ausführen eines Programms.
Eingang:
// Java-Programm zur Veranschaulichung der
// Konzept der Vererbung
// Basisklasse
Klasse Fahrrad {
// Die Bicycle-Klasse hat zwei Felder
öffentliche Ausrüstung;
öffentliche int-Geschwindigkeit;
// Die Bicycle-Klasse hat einen Konstruktor
öffentliches Fahrrad (int gear, int speed)
{
this.gear = Gang;
this.speed = Geschwindigkeit;
}
// Die Bicycle-Klasse hat drei Methoden
public void applyBrake(int decrement)
{
Geschwindigkeit -= Abnahme;
}
public void speedUp(int increment)
{
Geschwindigkeit += Schrittweite;
}
// toString()-Methode zum Drucken von Fahrradinformationen
öffentlicher String toString()
{
return (“Anzahl der Gänge sind ” + Gang + “\n”
+ „Geschwindigkeit des Fahrrads ist“ + Geschwindigkeit);
}
}
// abgeleitete Klasse
Klasse MountainBike erweitert Fahrrad {
// Die Unterklasse MountainBike fügt ein weiteres Feld hinzu
public int Sitzhöhe;
// Die Unterklasse MountainBike hat einen Konstruktor
öffentliches MountainBike (int gear, int speed,
int startHöhe)
{
// Konstruktor der Basisklasse (Fahrrad) aufrufen
super (Gang, Geschwindigkeit);
Sitzhöhe = startHöhe;
}
// Die Unterklasse MountainBike fügt eine weitere Methode hinzu
public void setHeight(int neuerWert)
{
Sitzhöhe = neuerWert;
}
// toString()-Methode überschreiben
// von Fahrrad zum Drucken weiterer Informationen
@Öffentlichen String überschreiben toString()
{
return (super.toString() + „\nSitzhöhe ist „
+ Sitzhöhe);
}
}
// Treiberklasse
öffentlicher Klassentest {
public static void main(String args[])
{
MountainBike mb = neues MountainBike (3, 100, 25);
System.out.println(mb.toString());
}
}
Ausgang :
Anzahl der Gänge sind 3
Geschwindigkeit des Fahrrads ist 100
Sitzhöhe ist 25
Bei der Vererbung verwendete Begriffe
- Klasse : Eine Klasse ist eine Gruppe von Objekten, die gemeinsame Eigenschaften haben. Es ist wie eine Bedienungsanleitung oder ein Bauplan, aus dem weitere individuelle Einheiten entstehen.
- Unterklasse / Unterklasse: Eine Unterklasse ist eine Klasse, die die andere Klasse erbt. Sie wird auch als abgeleitete Klasse, erweiterte Klasse oder untergeordnete Klasse bezeichnet.
- Superklasse/Elternklasse : Superklasse ist die Klasse, von der eine Unterklasse die Merkmale erbt. Sie wird auch Basisklasse oder Elternklasse genannt.
- Wiederverwendbarkeit : Wiederverwendbarkeit ist ein zentrales Designprinzip in der objektorientierten Programmierung. Das bedeutet, dass Sie die Felder und Methoden aus bestehenden Klassen beim Erstellen neuer Klassen wiederverwenden können, anstatt sich jedes Mal erneut mit individuellem Coding zu wiederholen.
Beliebte Kurse und Artikel zum Thema Softwareentwicklung
Beliebte Programme | |||
Executive PG-Programm in Softwareentwicklung - IIIT B | Blockchain-Zertifikatsprogramm - PURDUE | Programm für Cybersicherheitszertifikate - PURDUE | MSC in Informatik - IIIT B |
Andere beliebte Artikel | |||
Gehalt als Cloud Engineer in den USA 2021-22 | Gehalt als AWS-Lösungsarchitekt in den USA | Backend-Entwicklergehalt in den USA | Front-End-Entwicklergehalt in den USA |
Gehalt für Webentwickler in den USA | Fragen im Vorstellungsgespräch für Scrum Master im Jahr 2022 | Wie starte ich 2022 eine Karriere in der Cybersicherheit? | Karrieremöglichkeiten in den USA für Ingenieurstudenten |
Arten der Java-Vererbung
1. Einfache Vererbung
Einfache Vererbung bedeutet, dass eine Klasse eine andere erweitert oder mehrere Schnittstellen gleichzeitig mit demselben Zugriffsmodifizierer oder keinem Zugriffsmodifizierer implementiert, dh entweder öffentlich oder privat. Die erzeugte Unterklasse erbt alle Mitgliedsfunktionen und Datenmitglieder von ihrer Basis-/Oberklasse mit Ausnahme derjenigen, die als privat deklariert sind, und auf diese Mitglieder kann von den Mitgliedern und Freunden der Unterklasse zugegriffen werden.
Siehe folgendes Beispiel:
Eingang:
// Java-Programm zur Veranschaulichung der
// Konzept der Einfachvererbung
java.io.* importieren;
java.lang.* importieren;
java.util.* importieren;
Klasse eins {
öffentlich void print_A()
{
System.out.println("A");
}
}
Klasse zwei erweitert eins {
public void print_for() { System.out.println(“for”); }
}
// Treiberklasse
öffentliche Klasse Main {
public static void main(String[] args)
{
zwei g = neue zwei ();
g.print_A();
g.print_for();
g.print_Apple();
}
}
Ausgang :
EIN
Zum
Apfel
2. Vererbung auf mehreren Ebenen
Bei der mehrstufigen Vererbung handelt es sich um eine Vererbungskette. n In Java kann eine abgeleitete Klasse nicht direkt auf die Member der Großeltern zugreifen. Wenn Sie eine Vererbungshierarchie wie diese haben, in der jede neue Ebene von einer anderen Person oder Sache vor ihr erbt (oder umgekehrt), wird es für jedes gegebene Objekt in jeder Gruppe schwierig, weil sie nur das verwenden können, was für sie selbst verfügbar ist Ebenen; Daher wird das Debuggen mühsamer als nötig!
Eingang:
// Java-Programm zur Veranschaulichung der
// Konzept der mehrstufigen Vererbung
java.io.* importieren;
java.lang.* importieren;
java.util.* importieren;
Klasse eins {
öffentliche Leere print_Inheritance()
{
System.out.println("Vererbung");
}
}
Klasse zwei erweitert eins {
public void print_in() {System.out.println("in"); }
}
Klasse drei erweitert zwei {
öffentliche Leere print_Inheritance()
{
System.out.println("Java");
}
}
// Abgeleitete Klasse
öffentliche Klasse Main {
public static void main(String[] args)
{
drei g = neue drei ();
g.print_Inheritance();
g.print_in();
g.print_Java();
}
}
Ausgang :
Nachlass
Im
Java
3. Hierarchische Vererbung
Zwei Klassen in einer Hierarchie können voneinander erben. Wenn zum Beispiel Hund und Katze beide unter Tier fallen, gibt es eine hierarchische Vererbung, wobei sie Nachkommen dieser Klasse sind.
Eingang:
Klasse Tier{
void eat(){System.out.println(“essen…”);}
}
Klasse Hund erweitert Tier{
void bark(){System.out.println(“bellen…”);}
}
Klasse Katze erweitert Tier{
void meow(){System.out.println(“miauen…”);}
}
Klasse TestInheritance3{
public static void main(String args[]){
Katze c=neue Katze();
c.meow();
c.essen();
//c.bark();//CTError
}}
Ausgang :
miauen …
Essen…
4. Mehrfachvererbung (über Schnittstellen)
Java unterstützt keine Mehrfachvererbung mit Klassen, aber es ist möglich, sie über Schnittstellen zu erreichen. In der Abbildung unten ist Klasse C sowohl von A als auch von B abgeleitet, was bedeutet, dass sie einige Funktionen gemeinsam haben, während sie für andere unterschiedliche Implementierungen haben, abhängig von ihren spezifischen Anforderungen bei der Codeausführung oder der Erfüllung von Methoden, die von Benutzern benötigt werden (i).
Eingang:
// Java-Programm zur Veranschaulichung der
// Konzept der Mehrfachvererbung
java.io.* importieren;
java.lang.* importieren;
java.util.* importieren;
Schnittstelle eins {
öffentliche Leere print_eye();
}
Schnittstelle zwei {
öffentlich void print_for();
}
Schnittstelle drei erweitert eins, zwei {
öffentliche Leere print_eye();
}
Klassenkind implementiert drei {
@Override public void print_eye()
{
System.out.println("Auge");
}
public void print_for() { System.out.println(“for”); }
}
// Abgeleitete Klasse
öffentliche Klasse Main {
public static void main(String[] args)
{
Kind c = neues Kind();
c.print_eye();
c.print_for();
c.print_eye();
}
}
Ausgang :
Auge
zum
Auge
5. Hybride Vererbung (über Schnittstellen)
Hybride Vererbung ist eine Art der Programmierung, die es uns ermöglicht, zwei oder mehr Arten zu mischen. Klassen können dies nicht alleine tun, weil sie nur einen Satz von Methoden haben, was bedeutet, dass wir ein anderes Objekt brauchen, damit alles richtig funktioniert, aber Schnittstellen bieten Sicherheit, indem sie Ihnen ermöglichen, zu wissen, wie Ihr Programm aussehen wird, bevor irgendein Code geschrieben wurde !
Eingang
(Bezug)
Klasse A und B erweitern Klasse C → Hierarchische Vererbung
Klasse D erweitert Klasse A → Einfachvererbung
Klasse C
{
öffentliche void disp()
{
System.out.println("C");
}
}
Klasse A erweitert C
{
öffentliche void disp()
{
System.out.println("A");
}
}
Klasse B erweitert C
{
öffentliche void disp()
{
System.out.println("B");
}
}
Klasse D erweitert A
{
öffentliche void disp()
{
System.out.println("D");
}
public static void main(String args[]){
D obj = neu D();
obj.disp();
}
}
Ausgabe:
D
Wenn Sie sich eingehend mit der Vererbung in Java und anderen OOP-Konzepten vertraut machen möchten, empfehlen wir das Executive PG Program in Software Development von upGrad von IIIT-Bangalore . Der 13-monatige Kurs wurde von erstklassigen Branchenexperten und Dozenten entwickelt, um Kompetenzen in über 30 Tools und Software aufzubauen. Es umfasste mehr als 400 Stunden Inhalt, mehr als 30 branchenrelevante Fallstudien und Projekte und mehr als 10 Live-Sitzungen, um Ihnen dabei zu helfen, die gewünschten Ergebnisse zu erzielen; Der Kurs bietet drei Spezialisierungen, nämlich Full-Stack-Entwicklung, Cloud-Backend-Entwicklung und Cyber Security.
Buchen Sie noch heute Ihren Platz im Programm!
Welche vier Erbarten gibt es?
Die vier Arten der Vererbung in Java sind: 1. Hierarchische Vererbung 2. Hybridvererbung 3. Einfache Vererbung 4. Vererbung auf mehreren Ebenen
Erklären Sie Polymorphismus in Java.
Polymorphismus in Java ist ein objektorientiertes Programmierkonzept, bei dem Objekte in Programmen mehrere Formen annehmen können. Dadurch kann ein einzelnes Objekt dieselbe Aktion auf vielfältige Weise ausführen.
Erklären Sie Multithreading in Java.
Multithreading in Java ist eine Funktion, durch die mehrere Teile (jeweils als Thread bezeichnet) eines Programms gleichzeitig ausgeführt werden können, um eine optimale CPU-Auslastung zu ermöglichen.