Vererbung in Java: Klasse und Schnittstelle
Die Vererbung in Java ist eine einfache und mächtige Eigenschaft im objektorientierten Konzept, sie ermöglicht es Ihnen, die Attribute und Methoden der übergeordneten Klasse in die Tochterklasse umzuschreiben, und auf diese Weise kann auch eine andere Unterklasse von der Tochterklasse erben. Java verwendet diese Eigenschaft in allen Klassen.Das Schlüsselwort, das für die Vererbung in Java verwendet wird, ist extends. Mehrfache Vererbung ist verboten, aber für Schnittstellen erlaubt.
Die Objektklasse
Beim Programmieren stellen wir fest, dass Methoden überall wiederholt werden, wie z.B.: toObject(), equals(), warten()... etc. Dies liegt daran, dass in Java alle Klassen von der Superklasse erben. Objekt Dies ist die Wurzel der gesamten Hierarchie.![]() |
Alle Klassen erben von Object |
Example
In diesem Beispiel haben wir eine Person-Klasse mit den Attributen name und address deklariert. Beide Unterklassen erben von Person: die erste Klasse Direktor und die zweite Klasse Angestellter, die als zusätzliches Attribut salary.
class Personnote:
{
public Name der Zeichenkette;
öffentliche String-Adresse;
}
class Mitarbeiter verlängert Person
{
int Gehalt;
public Employee(String name, String address, int salary)
{
this.name=name;
this.address=Adresse;
this.salary=salary;
}
}
class Director extends Person
{
public Director()
{
this.name= "name";
this.adresse= "Adresse";
}
}
Die Tochterklasse erbt die deklarierten membersprotected und public und erbt auch die Mitglieder private wenn es sich im selben Paket wie die übergeordnete Klasse befindet.
Das Super-Schlüsselwort in java
Die Person-Klasse kann erweitert werden, um von ihr in Unterklassen geerbt zu werden, wenn man bedenkt, dass es in diesem Unternehmen mehrere Funktionen gibt: Ingenieur, Buchhalter, Sekretärin... etc.class Engineer extends Employee
{
public Engineer()
{
super("name","address",110);
}
public void concevoir(){System.out.println("Ich bin Ingenieur");}
public void developper(){};
}
class Accountant erweitert Employee
{
public Accountant()
{
this.name= "name";
this.adresse= "Adresse";
this.salary = 3000;
}
public void manageAccounts(){};
public void gererLesBilans(){};
}
Das Schlüsselwort super wird auch verwendet, um Methoden der höheren Klasse aufzurufen. Hier ist ein Beispiel:
class Ingenieur_reseaux erweitert EmployeeOhne super wird die im Konstruktor Ingénieur_réseaux deklarierte Methode design() anstelle der in engineer deklarierten Methode design() aufgerufen, so dass Sie, um auf die übergeordnete Methode zu verweisen, das Schlüsselwort super.
{
public Ingenieur_reseaux ()
{
super("name","address",3100);
}
public void concevoir(){
super.concevoir();
System.out.println("Ich habe die Netzwerkarchitektur des Unternehmens entworfen");
}
}
Runtime:
Ich bin Ingenieur
Ich habe die Netzwerkarchitektur des Unternehmens entworfen
Schnittstellenvererbung in java
Mehrfache Vererbung ist für Schnittstellen erlaubt.interface print{
void print();
}
interface display{
void display();
}
interface interfaceIA erweitert print,display{
void imprimer_afficher();
}
class testIA implementiert interfaceIA{
void print(){System.out.println("Printing")};
void display(){System.out.println("Drucken abgeschlossen")};
public static void main(){
testIA test = new testIA();
test.print();
test.display();
}
}