Термин «обтекание» иногда означает то же самое, что и encapsulation , где объект или тип используется внутри класса как часть деталей его реализации и не предоставляет его внешнему коду. Однако перенос часто относится конкретно к акту инкапсуляции класса в другом классе, который реализует тот же интерфейс , что и класс переноса, но немного меняет свое поведение или добавляет новые функции ( Pattern Decorator ) или внешний класс реализует другой интерфейс, по сути, преобразовывая обернутый класс, чтобы сделать его совместимым с другой программой ( Pattern Adapter ). Обе эти обертки почти всегда выполняются вручную и должны выполняться во время компиляции (путем написания кода).
Вы также можете создавать динамические прокси практически для любого объекта во время выполнения, используя java.lang.reflect.Proxy.newProxyInstance(...)
. Вы можете прочитать официальное руководство по Динамическим классам прокси , чтобы узнать, как его использовать. Тем не менее, вы еще не дали ни одного варианта использования, так что это может быть не то, что вы ищете. Прокси обычно зарезервированы для защиты объектов или делегирования на удаленный сервер через RPC и могут быть очень сложными.