动态代理 - 创建新代理实例时的类加载器参数

发布于 2024-10-17 22:21:46 字数 282 浏览 5 评论 0原文

我想知道当您在创建动态代理实例时调用 newProxyInstance 方法时, ClassLoader 参数到底是做什么用的?

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

非常感谢!

PS 我不确定如何正确使用代码格式化标签。

I was wondering about when you call the newProxyInstance method when creating a dynamic proxy instance, what exactly is the ClassLoader argument for?

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

Many thanks!

P.S. I'm not sure how to use the code formatting tags correctly.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一笑百媚生 2024-10-24 22:21:46

newProxyInstance 定义其用法相当于:

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

所以,如果你想要更多关于loader的详细信息,您可以查看getProxyClass。基本上,它只是充当定义生成的代理类的类加载器。

The documentation for newProxyInstance defines its use to be equivalent to:

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

So, if you want a bit more detail about loader, you can look at the documentation for getProxyClass. Basically, it just serves as the class loader that defines the generated proxy class.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文