Ufupishaji wa Njia za Mzazi katika OOP katika JavaScript
Darasa la mtoto linaweza kufupisha njia ya mzazi, kwa kuunda njia kwa jina sawa. Hebu tuangalie kwa mfano. Hebu tuwe na darasa la mzazi lifuatalo:
class User {
setName(name) {
this.name = name;
}
getName() {
return this.name;
}
}
Hebu katika darasa la mtoto tuunde njia yenye jina moja:
class Student extends User {
setName(name) {
}
}
Kwa kawaida, ufupishaji wa njia za mzazi unahitajika ili kubadilisha au kuongeza tabia ya njia hiyo. Hebu katika kesi yetu tuongeze ukaguzi wa urefu wa jina:
class Student extends User {
setName(name) {
if (name.length > 0) {
this.name = name;
} else {
throw new Error('kosa la jina la mwanafunzi');
}
}
}
Hebu tuhakikishe kwamba ndio njia iliyofupishwa inaitwa. Kwanza tuunde kitu cha darasa la mtoto:
let student = new Student;
Sasa tuite njia yetu, tukipitisha thamini sahihi ndani yake:
student.setName('john');
Sasa tuite njia, tukipitisha thamini isiyo sahihi ndani yake. Kama matokeo tutaona kosa lililotupwa kwenye konsoli:
student.setName(''); // kosa
Katika darasa User fanyeni
kipataji na kiwekeji cha umri.
Katika darasa Employee fupisha
kiwekeji cha umri na fanya ndani yake
ukaguzi wa kwamba umri ni kutoka
18 hadi 65 miaka.