黑马程序员技术交流社区

标题: 关于代理的知识 [打印本页]

作者: 颜小飞    时间: 2011-11-27 11:03
标题: 关于代理的知识
本帖最后由 颜小飞 于 2011-12-12 21:59 编辑

代理的Proxy.newProxyInstance方法返回的是一个Object类型的类
我想问一下这个Object类能直接转换为实现某个接口的实现类吗?
作者: 张志东    时间: 2011-11-27 11:07
不能,起码不能是ArrayList,我试过,他老报错,为什么,我也不知道。
作者: 颜小飞    时间: 2011-11-27 11:16
因为jva生成的动态类必须实现一个或多个接口,所以jvm生成的动态类只能用作具有相同接口的目标类代理,不能是具体的实现类。因为具体实现类除了有接口的方法外
还可能有自己的方法,这个自己的方法就代理不了了。后面一句是我自己的推断。前面的是张老师的原话!
作者: wanghongye    时间: 2011-11-27 18:25
java中的所有类型都是继承Object的 所以任何类型都可以转换成Object类型,接口当然可以转换成Object类型。Object本身没有实现任何接口。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2