Interface untuk Kelas OOP di TypeScript
Interface di TypeScript juga digunakan secara luas
sebagai template untuk kelas. Untuk menerapkan
interface yang diinginkan ke sebuah kelas,
tulis kata kunci implements setelah nama kelas
dan kemudian nama interface.
Sementara itu, interface hanya mendeskripsikan properti dan metode publik kelas. Bagian privat ditentukan dalam kelas itu sendiri dan tidak dideskripsikan dalam interface.
Mari kita coba dalam praktik. Misalkan kita memiliki interface berikut, yang menentukan sebuah properti dan sebuah metode:
interface IUser {
name: string;
greet(): string;
}
Mari buat sebuah kelas yang mengimplementasikan interface ini.
Dalam kelas ini, kita harus mengimplementasikan
properti name dan metode greet:
class User implements IUser {
name: string;
constructor(name: string) {
this.name = name;
}
greet() {
return `Halo, ${this.name}!`;
}
}
Buatlah sebuah interface IMath dengan properti
num1 dan num2 serta metode
getDiv, yang akan membagi angka pertama
dengan angka kedua.
Buatlah kelas Math yang mengimplementasikan
interface IMath.