Interfaces pour les classes POO en TypeScript
Les interfaces en TypeScript sont largement utilisées
comme modèles également pour les classes. Pour
appliquer une interface à une classe,
le mot-clé implements est écrit après le nom de la classe,
suivi du nom de l'interface.
Dans ce cas, les interfaces décrivent uniquement les propriétés et méthodes publiques de la classe. La partie privée est définie dans la classe elle-même et n'est pas décrite dans l'interface.
Essayons en pratique. Supposons que nous ayons l'interface suivante, définissant une propriété et une méthode :
interface IUser {
name: string;
greet(): string;
}
Créons une classe implémentant cette interface.
Dans cette classe, nous devons implémenter
la propriété name et la méthode greet :
class User implements IUser {
name: string;
constructor(name: string) {
this.name = name;
}
greet() {
return `hello, ${this.name}!`;
}
}
Créez une interface IMath avec les propriétés
num1 et num2 et une méthode
getDiv, qui divisera le premier
nombre par le second.
Créez une classe Math qui implémente
l'interface IMath.