Antara Muka untuk Kelas OOP dalam TypeScript
Antara muka dalam TypeScript digunakan secara meluas
sebagai templat untuk kelas juga. Untuk
mengaplikasikan antara muka yang dikehendaki kepada kelas,
perkataan kunci implements ditulis selepas nama kelas
diikuti dengan nama antara muka.
Dalam hal ini, antara muka hanya menerangkan sifat dan kaedah awam kelas. Bahagian persendirian ditetapkan dalam kelas itu sendiri dan tidak diterangkan dalam antara muka.
Mari kita cuba secara praktikal. Katakan kita mempunyai antara muka berikut, yang menetapkan satu sifat dan satu kaedah:
interface IUser {
name: string;
greet(): string;
}
Mari buat kelas yang melaksanakan antara muka ini.
Dalam kelas ini, kita mesti mempunyai sifat
name dan kaedah greet yang dilaksanakan:
class User implements IUser {
name: string;
constructor(name: string) {
this.name = name;
}
greet() {
return `hello, ${this.name}!`;
}
}
Buat antara muka IMath dengan sifat-sifat
num1 dan num2 serta kaedah
getDiv, yang akan membahagikan nombor pertama
dengan nombor kedua.
Buat kelas Math yang melaksanakan
antara muka IMath.