⊗tsSpOpAMt 18 of 37 menu

Absztrakt metódusok az OOP-ben TypeScript-ben

Előfordul, hogy az leszármazott osztályoknak közös metódussal kell rendelkezniük, ennek a metódusnak a megvalósítása azonban az adott leszármazotttól függ. Ebben az esetben ez a metódus deklarálható a szülő absztrakt osztályában anélkül, hogy megírná a megvalósítását. És akkor a leszármazottak kötelesek lesznek megvalósítani ezeket a metódusokat. Az ilyen metódusokat absztrakt metódusoknak nevezzük, és a abstract kulcsszóval deklaráljuk.

Példaként vegyük az absztrakt User osztályunkat. Tegye kötelezővé, hogy ennek az osztálynak a leszármazottai rendelkezzenek egy show metódussal, amely kiírja az objektum adatait.

Ennek a metódusnak a megvalósítása azonban a leszármazotttól függ. Deklaráljuk ezt a metódust absztraktként a User osztályban:

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

Valósítsuk meg ezt a metódust a Student leszármazott osztályban:

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

Valósítsuk meg ezt a metódust a Employee leszármazott osztályban:

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

Az absztrakt Figure osztályban készítsen absztrakt metódusokat a terület és a kerület megszerzéséhez.

A Square és Rectangle leszármazott osztályokban írja meg ezen metódusok megvalósítását.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás