Udvidelse af grænseflader i OOP i TypeScript
Grænseflader i TypeScript kan arve
fra hinanden. Denne type interaktion
kaldes udvidelse af grænseflader.
Lad os se på et eksempel. Lad os sige, at vi
har en grænseflade ISize:
typescriptinterface ISize {
height: number;
width: number;
}
Lad os lave en grænseflade IStyle, som
udvider ISize:
typescriptinterface IStyle extends ISize {
color: string;
}
Lad os nu oprette en klasse Figure,
der implementerer grænsefladen IStyle. Vores
klasse bliver nødt til at implementere både egenskaben
fra grænsefladen selv og fra dens forælder.
Lad os gøre det:
typescriptclass 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;
}
}
Lad os tjekke, hvordan det virker:
typescriptlet fig = new Figure(130, 200, 'green');
console.log(fig);
Задание 1
Opret en grænseflade IProgrammer med
egenskaberne salary og language.
Lad denne grænseflade arve fra IUser
med egenskaberne name, birthday.
Задание 2
Lav en klasse Employee, som
implementerer IProgrammer.