⊗tsSpOpACl 17 of 37 menu

Abstraktní OOP třídy v TypeScriptu

Existují situace, kdy máme rodičovskou třídu, která obsahuje obecné vlastnosti a metody, a od ní dědí potomkové třídy.

Zároveň může být tak, že budeme vytvářet objekty potomkových tříd, ale ne rodičovské třídy. Ta je nám potřebná pouze pro skupinování obecných vlastností a metod.

V tomto případě, abychom explicitně zakázali vytváření objektů rodičovské třídy, lze ji deklarovat jako abstraktní. To se provádí pomocí klíčového slova abstract.

Podívejme se na příklad. Vezměme naši třídu User a deklarujme ji jako abstraktní:

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

Vytvořme třídu Student, která dědí od User:

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

Vytvořme třídu Employee, která dědí od User:

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

Vytvořte abstraktní třídu Figure, která představuje geometrický útvar. Nechť v ní jsou vlastnosti pro obvod a obsah.

Vytvořte třídu Square, která dědí od třídy Figure.

Vytvořte třídu Rectangle, která dědí od třídy Figure.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout