Sobes.tech
Junior — Middle
99

El tudná magyarázni, mit jelent az összetétel elve az objektumorientált programozásban?

Cégeket kérdeztek
СБЕР Бизнес
АО К-Технологии

Válasz az MI-től

sobes.tech MI

Принцип композиции в объектно-ориентированном программировании означает построение сложных объектов из более простых, путем включения одних объектов внутрь других. Вместо наследования, где класс расширяет другой класс, композиция позволяет создавать объекты, которые содержат другие объекты как свои части, делегируя им часть функциональности.

Например, если у вас есть класс Автомобиль, он может содержать объект класса Двигатель. Вместо того, чтобы Автомобиль наследовал Двигатель, он просто использует его как часть себя. Это повышает гибкость и повторное использование кода.

Пример на Python:

class Engine:
    def start(self):
        print("Двигатель запущен")

class Car:
    def __init__(self):
        self.engine = Engine()  # композиция

    def start(self):
        self.engine.start()  # делегирование вызова

car = Car()
car.start()  # Выведет: Двигатель запущен

Таким образом, композиция позволяет строить сложные объекты из простых компонентов, улучшая модульность и облегчая поддержку кода.