Junior — Middle
Оё мумкин аст, ки шарҳ дод, ки маънои иваз кардани усул дар барномасозии объектӣ чист ва чӣ гуна истифода мешавад?
sobes.tech AI
Ҷавоб аз AI
Барои иваз кардани усул (method overriding) дар барномасозии объектӣ, вақте ки субсинф иҷрои худро барои усули, ки аллакай дар суперкласс муайян шудааст, пешниҳод мекунад.
Ин имкон медиҳад, ки рафтори усул барои субсинф махсус тағир ёбад ё васеъ карда шавад, дар ҳоле ки интерфейри умумӣ нигоҳ дошта мешавад.
Масалан дар JavaScript (Node.js):
class Animal {
speak() {
console.log('Ҳайвон садо медиҳад');
}
}
class Dog extends Animal {
speak() {
console.log('Саг ҳуррор мекунад');
}
}
const dog = new Dog();
dog.speak(); // Натиҷа: Саг ҳуррор мекунад
Дар ин ҷо, усули speak дар синфи Dog усули синфи Animal-ро иваз мекунад, то рафтори бештар махсусро таъмин кунад.