Это вопрос о терминологии в OOP.
Допустим, у вас есть два класса A
и B
, с
class A extends B {}
Теперь B
имеет метод с именем doSomething()
, который он вызывает в своем constructor
.
class B {
constructor() {
this.doSomething();
}
doSomething() {
/* some functionality almost all classes extending B need */
}
}
Теперь, к сожалению, A
не хочет и не нуждается в том, что происходит, когда конструктор B вызывает doSomething()
. Это даже вредно для экземпляров A
.
Ориентация объекта предлагает возможность перезаписать (или это переопределить ?) Метод в наследующем классе:
class A extends B {
constructor() {
super(); // calls the contructor of B
}
doSomething() {
this.doNothing();
}
doNothing() {
return;
}
}
Мой вопрос:
Существует ли конкретный c термин в ориентации объекта, который описывает именно этот способ перезаписи / переопределения унаследованного метода с помощью метода что нейтрализует функциональность унаследованных методов, делая в основном ничего ? Как вы звоните A
doSomething()
?