TypeScript-те ОЖЖ-де интерфейстерді кеңейту
TypeScript-тегі интерфейстер бір-бірінен
мурастала алады. Мұндай өзара әрекеттесу
интерфейстерді кеңейту деп аталады.
Мысалға қарайық. Бізде ISize интерфейсі бар болсын:
interface ISize {
height: number;
width: number;
}
ISize интерфейсін кеңейтетін IStyle
интерфейсін жасайық:
interface IStyle extends ISize {
color: string;
}
Енді IStyle интерфейсін іске асыратын
Figure класын жасайық. Біздің клас
өзінің интерфейсінің де, оның атасының да
қасиеттерін іске асыруы керек.
Мұны істейік:
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;
}
}
Жұмысын тестейік:
let fig = new Figure(130, 200, 'green');
console.log(fig);
salary және language қасиеттері бар
IProgrammer интерфейсін жасаңыз.
Бұл интерфейс name, birthday қасиеттері бар
IUser интерфейсін мурастасын.
IProgrammer интерфейсін іске асыратын
Employee класын жасаңыз.