OOP klasslary üçin TypeScript interfeýsleri

TypeScript-däki interfeýsler giňden ulanylýar şablonlar we klasslar üçin hem. Klassa gerekli interfeýs ulanylmak üçin, klas adyndan soň kript söz implements ýazylýar we soňra interfeýsiň ady gelýär.

Bu ýagdaýda interfeýsler diňe klasymyň public aýratynlyklaryny we usullaryny görkezýär. Private bölegi klasyň özünde kesgitlenilýär we interfeýsde görkezilmeýär.

Amalyýetda synaşaly. Bizde aşakdaky interfeýs bolsun, haýsydyr bir aýratynlygy we usulyny kesgitleýän:

typescriptinterface IUser {
  name: string;
  greet(): string;
}

Geliň bu interfeýsi ýerine ýetirýän klas ýasaýaly. Bu klasda bizde ýerine ýetirilen bolmaly aýratynlyk name we usul greet:

typescriptclass User implements IUser {
  name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  greet() {
    return `Salam, ${this.name}!`;
  }
}
Задание 1

IMath interfeýsini ýaradyň, onuň aýratynlyklary num1 we num2, we şeýle hem usul getDiv, birinji san ikinji sana bölmeli.

Задание 2

IMath interfeýsini ýerine ýetirýän Math klasyny ýasaň.