Основные понятия ООП
Объектно-ориентированное программирование (ООП) — это методология разработки программного обеспечения, основанная на концепции объектов и классов.
Класс — это шаблон или проект объекта, определяющий его свойства и поведение. Объект — экземпляр класса, обладающий конкретными значениями свойств и способностями выполнять действия.
Инкапсуляция
Инкапсуляция позволяет скрыть внутреннюю реализацию объекта от внешнего мира, предоставляя доступ только через специально объявленные методы. Это обеспечивает защиту данных и упрощает поддержку кода.
Наследование
Наследование позволяет создавать новые классы на основе существующих, наследуя их свойства и методы. Новый класс называется производным, а исходный — базовым. Производный класс может добавлять свои собственные свойства и методы, расширяя функциональность базового.
Пример использования наследования
```cpp class Animal { public: void eat() { std::cout << "Animal eats" << std::endl; } };
class Dog : public Animal { public: void bark() { std::cout << "Dog barks" << std::endl; } }; ```
Полиморфизм
Полиморфизм позволяет объектам разных типов вести себя одинаково при вызове одного метода. Это достигается за счет виртуальных функций.
Пример полиморфизма
```cpp class Shape { public: virtual double area() = 0; };
class Circle : public Shape { public: double radius; Circle(double r) : radius(r) {} double area() override { return 3.14 * radius * radius; } };
void calculateArea(Shape& shape) { std::cout << "Area is: " << shape.area() << std::endl; }
int main() { Circle circle(5); calculateArea(circle); // выводит площадь круга } ```
Исключения
Исключения используются для обработки ошибок и аномалий во время выполнения программы. Они позволяют программистам явно указывать возможные ошибки и обрабатывать их корректно.
Пропуски для самопроверки