⊗tsSpOpAMt 18 of 37 menu

Méthodes abstraites en POO dans TypeScript

Il arrive que les classes descendantes doivent avoir une méthode commune, cependant, l'implémentation de cette méthode dépend de la descendante spécifique. Dans ce cas, cette méthode peut être déclarée dans la classe parente abstraite, sans écrire son implémentation. Et alors les descendantes seront obligées d'implémenter ces méthodes. De telles méthodes sont appelées abstraites et sont également déclarées à l'aide du mot-clé abstract.

Prenons pour exemple notre classe abstraite User. Supposons que les héritiers de cette classe doivent obligatoirement avoir une méthode show, affichant les données de l'objet.

L'implémentation de cette méthode, cependant, dépendra de la descendante. Déclarons cette méthode comme abstraite dans la classe User :

abstract class User { public name: string; constructor(name: string) { this.name = name; } public abstract show(): string; }

Implémentons cette méthode dans la classe descendante Student :

class Student extends User { public course: number; constructor(name: string, course: number) { super(name); this.course = course; } show() { return this.name + ' ' + this.course; } }

Implémentons cette méthode dans la classe descendante Employee :

class Employee extends User { public salary: number; constructor(name: string, salary: number) { super(name); this.salary = salary; } show() { return this.name + ' ' + this.salary; } }

Dans la classe abstraite Figure, créez des méthodes abstraites pour obtenir l'aire et le périmètre.

Dans les classes descendantes Square et Rectangle, écrivez l'implémentation de ces méthodes.

Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser