Mở rộng giao diện trong OOP trong TypeScript
Các giao diện trong TypeScript có thể kế thừa
từ nhau. Sự tương tác như vậy
được gọi là mở rộng giao diện.
Chúng ta hãy xem một ví dụ. Giả sử chúng ta
có giao diện ISize:
typescriptinterface ISize {
height: number;
width: number;
}
Hãy tạo giao diện IStyle, giao diện này
sẽ mở rộng ISize:
typescriptinterface IStyle extends ISize {
color: string;
}
Bây giờ hãy tạo lớp Figure,
hiện thực giao diện IStyle. Lớp của chúng ta
sẽ phải hiện thực cả thuộc tính
của chính giao diện đó lẫn thuộc tính của giao diện cha của nó.
Hãy thực hiện điều đó:
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;
}
}
Hãy kiểm tra hoạt động:
typescriptlet fig = new Figure(130, 200, 'green');
console.log(fig);
Задание 1
Tạo giao diện IProgrammer với
các thuộc tính salary và language.
Hãy để giao diện này kế thừa IUser
với các thuộc tính name, birthday.
Задание 2
Tạo lớp Employee, lớp này
hiện thực IProgrammer.