Принцип SOLID, который фокусируется на использовании наследования для расширения функциональности, — это Принцип открытости/закрытости (Open/Closed Principle, OCP).
Какой из принципов SOLID фокусируется на использовании наследования для расширения функциональности?
Принцип SOLID, который фокусируется на использовании наследования для расширения функциональности, — это Принцип открытости/закрытости (Open/Closed Principle, OCP).
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Принцип SOLID, который фокусируется на использовании наследования для расширения функциональности, — это Принцип открытости/закрытости (Open/Closed Principle, OCP).
Он гласит, что программные сущности (классы, модули, функции) должны быть открыты для расширения, но закрыты для модификации. Это означает, что поведение класса можно расширять через наследование или композицию, не изменяя исходный код.
Пример на Java:
// Базовый класс
class Animal {
void makeSound() {
System.out.println("Some sound");
}
}
// Расширение функциональности через наследование
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Bark");
}
}
Здесь класс Dog расширяет функциональность Animal, не изменяя его исходный код.