Какие знаешь концепции ООП

Python Senior Без компании
Какие знаешь концепции ООП
Ответы
Основные концепции ООП в Python: - **Инкапсуляция** – сокрытие внутренней реализации и защита данных. В Python используется соглашение `_` и `__` для обозначения приватных атрибутов. ``` class BankAccount: def __init__(self, balance): self.__balance = balance # приватный атрибут ``` - **Наследование** – создание дочерних классов на основе родительских. ``` class Animal: def speak(self): pass class Dog(Animal): def speak(self): return "Woof!" ``` - **Полиморфизм** – возможность использования объектов разных классов через единый интерфейс. ``` def animal_sound(animal): print(animal.speak()) animal_sound(Dog()) # Выведет "Woof!" ``` - **Абстракция** – создание упрощённых моделей с помощью абстрактных классов и методов. ``` from abc import ABC, abstractmethod class Shape(ABC): @abstractmethod def area(self): pass ``` Дополнительно в Python часто используют: - **Композицию** (включение объектов других классов вместо наследования) - **Миксины** (классы для добавления функциональности через множественное наследование)