Erweiterung von Schnittstellen in OOP in TypeScript
Schnittstellen in TypeScript können voneinander
erben. Diese Interaktion wird
Erweiterung von Schnittstellen genannt.
Schauen wir uns ein Beispiel an. Nehmen wir an, wir
haben die Schnittstelle ISize:
interface ISize {
height: number;
width: number;
}
Erstellen wir die Schnittstelle IStyle, die
ISize erweitert:
interface IStyle extends ISize {
color: string;
}
Erstellen wir nun eine Klasse Figure,
die die Schnittstelle IStyle implementiert. Unsere
Klasse muss sowohl die Eigenschaft
der Schnittstelle selbst, als auch die ihres Elternteils implementieren.
Machen wir das:
class Figure implements IStyle {
height: number;
width: number;
color: string;
constructor(height: number, width: number, color: string) {
this.height = height;
this.width = width;
this.color = color;
}
}
Prüfen wir die Funktionsweise:
let fig = new Figure(130, 200, 'green');
console.log(fig);
Erstellen Sie eine Schnittstelle IProgrammer mit
den Eigenschaften salary und language.
Lassen Sie diese Schnittstelle IUser
mit den Eigenschaften name, birthday erben.
Erstellen Sie eine Klasse Employee, die
IProgrammer implementiert.