Interfészek az OOP osztályokhoz TypeScriptben

A TypeScriptben az interfészek széles körben használatosak mint sablonok az osztályokhoz is. Ahhoz, hogy egy osztályra alkalmazzuk a kívánt interfészt, az osztály neve után írjuk a implements kulcsszót, majd az interfész nevét.

Ebben az esetben az interfészek csak az osztály publikus tulajdonságait és metódusait írják le. A privát részt magában az osztályban határozzuk meg, és az interfészben nincs leírva.

Próbáljuk ki a gyakorlatban. Tegyük fel, hogy a következő interfészünk van, amely meghatároz egy tulajdonságot és egy metódust:

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

Készítsünk egy osztályt, amely megvalósítja ezt az interfészt. Ennek az osztálynak rendelkeznie kell a name tulajdonsággal és a greet metódussal:

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

Hozzon létre egy IMath interfészt a következő tulajdonságokkal: num1 és num2, valamint egy getDiv metódussal, amely az első számot elosztja a másodikkal.

Задание 2

Készítsen egy Math osztályt, amely megvalósítja a IMath interfészt.