Можешь объяснить основные принципы объектно-ориентированного программирования?
Answer from AI
sobes.tech AI
Объектно-ориентированное программирование (ООП) базируется на четырёх основных принципах:
-
Инкапсуляция — объединение данных и методов, работающих с этими данными, в единый объект. Это позволяет скрыть внутреннюю реализацию и защитить данные от прямого доступа извне.
-
Наследование — механизм, позволяющий создавать новые классы на основе существующих, наследуя их свойства и методы, что способствует повторному использованию кода.
-
Полиморфизм — способность объектов разных классов реагировать на одинаковые сообщения (вызовы методов) по-разному, что упрощает расширяемость и поддержку кода.
-
Абстракция — выделение существенных характеристик объекта, скрывая детали реализации, чтобы упростить взаимодействие с объектом.
Пример на JavaScript (Node.js):
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} издаёт звук.`);
}
}
class Dog extends Animal {
speak() {
console.log(`${this.name} гавкает.`);
}
}
const dog = new Dog('Бобик');
dog.speak(); // Бобик гавкает.
Здесь Dog наследует Animal, переопределяет метод speak (полиморфизм), а данные name инкапсулированы в объекте.