Назад к вопросам
Junior — Middle
81
Можете объяснить conceito декоратора и как он применяется в Java?
Компании, где спрашивали
Digital Zone
Ответ от нейросети
sobes.tech AI
Декоратор — это структурный паттерн проектирования, который позволяет динамически добавлять объектам новые обязанности, оборачивая их в другие объекты-декораторы.
В Java это часто реализуется через интерфейсы и композицию. Например, если есть интерфейс Component, то декоратор реализует этот же интерфейс и содержит ссылку на объект Component, которому делегирует вызовы, добавляя при этом дополнительное поведение.
Пример:
interface Component {
void operation();
}
class ConcreteComponent implements Component {
public void operation() {
System.out.println("Основная операция");
}
}
class Decorator implements Component {
private Component component;
public Decorator(Component component) {
this.component = component;
}
public void operation() {
System.out.println("Дополнительное поведение до");
component.operation();
System.out.println("Дополнительное поведение после");
}
}
// Использование
Component comp = new Decorator(new ConcreteComponent());
comp.operation();
Так можно расширять функциональность без изменения исходного кода.