Back to questions
Junior — Middle
50
Можете рассказать о принципах объектно-ориентированного программирования в языке Python?
Answer from AI
sobes.tech AI
Объектно-ориентированное программирование (ООП) в Python базируется на четырёх основных принципах:
-
Инкапсуляция — объединение данных и методов, работающих с этими данными, в единый объект (класс). Это позволяет скрыть внутренние детали реализации и защитить данные от прямого доступа.
-
Наследование — механизм, позволяющий создавать новый класс на основе существующего, наследуя его свойства и методы, что способствует повторному использованию кода.
-
Полиморфизм — способность объектов разных классов реагировать на одинаковые сообщения (методы) по-разному. В Python это достигается через переопределение методов.
-
Абстракция — выделение существенных характеристик объекта, скрывая несущественные детали.
Пример класса в Python:
class Animal:
def __init__(self, name):
self.name = name # инкапсуляция данных
def speak(self):
pass # абстрактный метод
class Dog(Animal): # наследование
def speak(self):
return f"{self.name} говорит: Гав!" # полиморфизм
dog = Dog("Шарик")
print(dog.speak()) # Шарик говорит: Гав!