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

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

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

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

sobes.tech AI

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

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

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

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

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

Пример на C++:

class Animal {
public:
    virtual void sound() { std::cout << "Some sound" << std::endl; }
};

class Dog : public Animal {
public:
    void sound() override { std::cout << "Woof" << std::endl; }
};

int main() {
    Animal* a = new Dog();
    a->sound(); // Выведет "Woof" благодаря полиморфизму
    delete a;
    return 0;
}