Sobes.tech
Назад к вопросам
Junior — Middle
87

Можешь объяснить основные принципы объектно-ориентированного программирования?

Компании, где спрашивали
РосатомРосатом

Ответ от нейросети

sobes.tech AI

Объектно-ориентированное программирование (ООП) базируется на четырёх основных принципах:

  1. Инкапсуляция — объединение данных и методов, работающих с этими данными, в единый объект. Это позволяет скрыть внутреннюю реализацию и защитить данные от прямого доступа извне.

  2. Наследование — механизм, позволяющий создавать новые классы на основе существующих, наследуя их свойства и методы, что способствует повторному использованию кода.

  3. Полиморфизм — способность объектов разных классов реагировать на одинаковые сообщения (вызовы методов) по-разному, что упрощает расширяемость и поддержку кода.

  4. Абстракция — выделение существенных характеристик объекта, скрывая детали реализации, чтобы упростить взаимодействие с объектом.

Пример на 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 инкапсулированы в объекте.