Назад к вопросам
Junior — Middle
67
Применяли ли вы паттерн Adapter в своих проектах?
Ответ от нейросети
sobes.tech AI
Паттерн Adapter часто применялся в проектах для интеграции несовместимых интерфейсов. Например, когда нужно использовать сторонний класс с интерфейсом, отличным от ожидаемого, создаётся адаптер, который реализует нужный интерфейс и внутри вызывает методы адаптируемого класса.
Пример на Java:
// Целевой интерфейс
interface Target {
void request();
}
// Класс с несовместимым интерфейсом
class Adaptee {
void specificRequest() {
System.out.println("Вызов специфического метода");
}
}
// Адаптер
class Adapter implements Target {
private Adaptee adaptee;
public Adapter(Adaptee adaptee) {
this.adaptee = adaptee;
}
@Override
public void request() {
adaptee.specificRequest();
}
}
// Использование
public class Main {
public static void main(String[] args) {
Adaptee adaptee = new Adaptee();
Target target = new Adapter(adaptee);
target.request(); // Вызовет specificRequest через адаптер
}
}