Grensesnitt for OOP-klasser i TypeScript
Grensesnitt i TypeScript brukes mye
også som maler for klasser. For å
anvende et grensesnitt på en klasse
skrives nøkkelordet implements etter klassenavnet
og deretter grensesnittets navn.
Samtidig beskriver grensesnitt kun offentlige egenskaper og metoder i klassen. Den private delen defineres i selve klassen og beskrives ikke i grensesnittet.
La oss prøve i praksis. La oss si at vi har følgende grensesnitt, som definerer en egenskap og en metode:
interface IUser {
name: string;
greet(): string;
}
La oss lage en klasse som implementerer dette grensesnittet.
I denne klassen må vi ha implementert
egenskapen name og metoden greet:
class User implements IUser {
name: string;
constructor(name: string) {
this.name = name;
}
greet() {
return `hello, ${this.name}!`;
}
}
Opprett et grensesnitt IMath med egenskapene
num1 og num2 og en metode
getDiv, som skal dele det første
tallet på det andre.
Lag en klasse Math som implementerer
grensesnittet IMath.