Dynamic Proxy - параметр Class Loader при создании нового экземпляра прокси - PullRequest
5 голосов
/ 17 февраля 2011

Мне было интересно, когда вы вызываете метод newProxyInstance при создании экземпляра динамического прокси, для чего именно используется аргумент ClassLoader?

public static Object newProxyInstance(ClassLoader loader, Class<?>[] interfaces, InvocationHandler h) throws IllegalArgumentException

Большое спасибо!

P.S. Я не уверен, как правильно использовать теги форматирования кода.

1 Ответ

3 голосов
/ 17 февраля 2011

Документация для newProxyInstance определяет его использование, эквивалентное:

Proxy.getProxyClass(loader, interfaces).
    getConstructor(new Class[] { InvocationHandler.class }).
    newInstance(new Object[] { handler });

Итак, если вы хотите немного больше узнать о loader, вы можете посмотреть документацию для getProxyClass. По сути, он просто служит загрузчиком классов, который определяет сгенерированный прокси-класс.

...