Grænseflader for OOP klasser i TypeScript
Grænseflader i TypeScript bruges i vid udstrækning
som skabeloner også for klasser. For at
anvende den ønskede grænseflade til en klasse
skrives nøgleordet implements efter klassenavnet
og derefter navnet på grænsefladen.
Her beskriver grænseflader kun klassens offentlige egenskaber og metoder. Den private del defineres i selve klassen og beskrives ikke i grænsefladen.
Lad os prøve det i praksis. Antag, at vi har følgende grænseflade, der definerer en egenskab og en metode:
interface IUser {
name: string;
greet(): string;
}
Lad os lave en klasse, der implementerer denne grænseflade.
I denne klasse skal vi have implementeret
egenskaben name og metoden greet:
class User implements IUser {
name: string;
constructor(name: string) {
this.name = name;
}
greet() {
return `hello, ${this.name}!`;
}
}
Opret en grænseflade IMath med egenskaberne
num1 og num2 og en metode
getDiv, som vil dividere det første
tal med det andet.
Lav en klasse Math, der implementerer
grænsefladen IMath.