Rozhrania pre OOP triedy v TypeScript

Rozhrania v TypeScript sa široko používajú ako šablóny aj pre triedy. Aby sme aplikovali požadované rozhranie na triedu, za menom triedy sa píše kľúčové slovo implements a potom názov rozhrania.

Rozhrania popisujú iba verejné vlastnosti a metódy triedy. Súkromná časť je definovaná v samotnej triede a nie je opísaná v rozhraní.

Vyskúšajme to v praxi. Predpokladajme, že máme nasledujúce rozhranie, ktoré definuje vlastnosť a metódu:

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

Vytvorme triedu, ktorá implementuje toto rozhranie. V tejto triede musíme implementovať vlastnosť name a metódu greet:

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

Vytvorte rozhranie IMath s vlastnosťami num1 a num2 a metódou getDiv, ktorá bude deliť prvé číslo druhým.

Задание 2

Vytvorte triedu Math, ktorá implementuje rozhranie IMath.