Utökning av gränssnitt i OOP i TypeScript
Gränssnitt i TypeScript kan ärva
varandra. Denna interaktion
kallas utökning av gränssnitt.
Låt oss titta på ett exempel. Låt oss säga att vi har
ett gränssnitt ISize:
interface ISize {
height: number;
width: number;
}
Låt oss skapa ett gränssnitt IStyle, som
kommer att utöka ISize:
interface IStyle extends ISize {
color: string;
}
Låt oss nu skapa en klass Figure,
som implementerar gränssnittet IStyle. Vår
klass måste implementera både egenskapen
för gränssnittet självt och dess förälder.
Låt oss göra detta:
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;
}
}
Låt oss kontrollera att det fungerar:
let fig = new Figure(130, 200, 'green');
console.log(fig);
Skapa ett gränssnitt IProgrammer med
egenskaperna salary och language.
Låt detta gränssnitt ärva IUser
med egenskaperna name, birthday.
Skapa en klass Employee, som
implementerar IProgrammer.