Встречается на собеседованиях • сегодня
В чем разница между Proxy и Adaptor
Proxy и Adapter — это структурные паттерны, но решают разные задачи:
Proxy контролирует доступ к объекту, добавляя промежуточный уровень (логирование, кэширование, ленивую инициализацию). Интерфейс Proxy и реального объекта одинаковый.
java
interface Image {
void display();
}
class RealImage implements Image {
public void display() { /* загрузка и отображение */ }
}
class ProxyImage implements Image {
private RealImage realImage;
public void display() {
if (realImage == null) realImage = new RealImage();
realImage.display();
}
}
text
**Adapter** преобразует интерфейс одного класса в интерфейс, ожидаемый клиентом. Используется для совместимости несовместимых интерфейсов.
```java
class LegacyRectangle {
void draw(int x1, int y1, int x2, int y2) { /* ... */ }
}
interface Shape {
void draw(int x, int y, int width, int height);
}
class RectangleAdapter implements Shape {
private LegacyRectangle adaptee;
public void draw(int x, int y, int w, int h) {
adaptee.draw(x, y, x + w, y + h);
}
}Ключевое отличие: Proxy сохраняет интерфейс, Adapter изменяет его для совместимости.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы