Sąsajos OOP klasėms TypeScript
Sąsajos TypeScript plačiai naudojamos
taip pat kaip šablonai ir klasėms. Tam,
kad pritaikytumėte norimą sąsają klasei,
po klasės pavadinimo rašomas raktinis žodis
implements ir tada sąsajos pavadinimas.
Tuomet sąsajos aprašo tik viešasias klasės savybes ir metodus. Privati dalis nustatoma pačioje klasėje ir sąsajoje neaprašoma.
Išbandykime praktiškai. Tarkime, mes turime šią sąsają, nustatančią savybę ir metodą:
interface IUser {
name: string;
greet(): string;
}
Sukurkime klasę, įgyvendinančią šią sąsają.
Šioje klasėje mes turime turėti įgyvendintas
savybę name ir metodą greet:
class User implements IUser {
name: string;
constructor(name: string) {
this.name = name;
}
greet() {
return `hello, ${this.name}!`;
}
}
Sukurkite sąsają IMath su savybėmis
num1 ir num2 ir metodu
getDiv, kuris padalins pirmąjį
skaičių iš antrojo.
Sukurkite klasę Math, kuri įgyvendina
sąsają IMath.