⊗jsOpIhOPM 31 of 60 menu

Презаписване на методи на родителя в ООП в JavaScript

Дъщерният клас може да презапише метод на родителя, като създаде метод със същото име. Нека разгледаме пример. Нека имаме следния родителски клас:

class User { setName(name) { this.name = name; } getName() { return this.name; } }

Нека в дъщерния клас създадем метод със същото име:

class Student extends User { setName(name) { } }

Обикновено презаписването на методи на родителя е необходимо, за да се промени или допълни поведението на този метод. В нашия случай нека добавим проверка за дължината на името:

class Student extends User { setName(name) { if (name.length > 0) { this.name = name; } else { throw new Error('student name error'); } } }

Нека се уверим, че се извиква именно презаписаният метод. Първо, нека създадем обект от дъщерния клас:

let student = new Student;

Сега нека извикаме нашия метод, като му подадем коректна стойност:

student.setName('john');

А сега нека извикаме метода, като му подадем некоректна стойност. В резултат ще видим в конзолата хвърлена грешка:

student.setName(''); // грешка

В класа User направете гетър и сетър за възрастта.

В класа Employee презапишете сетъра за възрастта и направете в него проверка, че възрастта е от 18 до 65 години.

Български
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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне