Адаптер – это структурный паттерн проектирования, позволяющий объектам с несовместимыми интерфейсами работать вместе. Он выступает в роли посредника, преобразуя интерфейс одного класса в интерфейс, ожидаемый другим классом.
Применяется, когда:
- Необходимо использовать существующий класс, но его интерфейс не соответствует нужному.
- Необходимо создать класс, который взаимодействует с несколькими существующими классами, имеющими разные интерфейсы.
Существует два основных типа реализации:
- Адаптер классов (через наследование): Адаптер наследует от адаптируемого класса и реализует целевой интерфейс.
- Адаптер объектов (через композицию): Адаптер содержит экземпляр адаптируемого класса и реализует целевой интерфейс, делегируя вызовы адаптируемому объекту.
Пример адаптера объектов:
java
Адаптер – это структурный паттерн проектирования, позволяющий объектам с несовместимыми интерфейсами работать вместе. Он выступает в роли посредника, преобразуя интерфейс одного класса в интерфейс, ожидаемый другим классом.
Применяется, когда:
- Необходимо использовать существующий класс, но его интерфейс не соответствует нужному.
- Необходимо создать класс, который взаимодействует с несколькими существующими классами, имеющими разные интерфейсы.
Существует два основных типа реализации:
- Адаптер классов (через наследование): Адаптер наследует от адаптируемого класса и реализует целевой интерфейс.
- Адаптер объектов (через композицию): Адаптер содержит экземпляр адаптируемого класса и реализует целевой интерфейс, делегируя вызовы адаптируемому объекту.
Пример адаптера объектов:
java