Sobes.tech
Назад к вопросам
Junior — Middle
66

В каком месте и как реализуется передача оригинального объекта в прокси?

Компании, где спрашивали
AstonAston

Ответ от нейросети

sobes.tech AI

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

Например, в Java это может выглядеть так:

public interface Service {
    void perform();
}

public class RealService implements Service {
    public void perform() {
        System.out.println("Выполнение реальной работы");
    }
}

public class ProxyService implements Service {
    private RealService realService;

    public ProxyService(RealService realService) {
        this.realService = realService; // передача оригинального объекта
    }

    public void perform() {
        System.out.println("Прокси: дополнительная логика перед вызовом");
        realService.perform(); // делегирование вызова
        System.out.println("Прокси: дополнительная логика после вызова");
    }
}

// Использование:
RealService real = new RealService();
ProxyService proxy = new ProxyService(real);
proxy.perform();

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