⊗tsSpOpAMt 18 of 37 menu

Усулҳои абстрактӣ дар ООП дар TypeScript

Гоҳо пеши меояд, ки дар синфҳои фарзанд бояд усули умумӣ мавҷуд бошад, аммо, татбиқи ин усул ба синфи мушаххаси фарзанд вобаста аст. Дар ин ҳолат ин усулро дар синфи абстрактии волидайн эълон кардан мумкин аст, ки нанависед татбиқи он. Ва он гоҳ фарзандон мебошанд вазнини татбиқ кардани ин усулҳо. Чунин усулҳо абстрактӣ номида мешаванд ва ҳамчунин бо истифода аз калимаи калидӣ эълон карда мешаванд abstract.

Барои мисол, биёед абстрактии худро гирем синфи User. Бигзор фарзандҳои ин синф бояд ҳатман усули show дошта бошанд, ки маълумоти объектро чоп мекунад.

Аммо, татбиқи ин усул ба фарзанд вобаста аст. Биёед дар синфи User ин усулро абстрактӣ эълон кунем:

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

Ин усулро дар синфи фарзанд Student татбиқ кунем:

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

Ин усулро дар синфи фарзанд Employee татбиқ кунем:

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

Дар синфи абстрактӣ Figure созед усулҳои абстрактӣ барои гирифтани масоҳат ва периметр.

Дар синфҳои фарзанд Square ва Rectangle татбиқи инҳо нависед усулҳо.

Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан