黑马程序员技术交流社区

标题: 动态代理的一个困惑 怎么讨论少了很多啊 [打印本页]

作者: 老骥伏枥    时间: 2012-12-20 12:00
标题: 动态代理的一个困惑 怎么讨论少了很多啊
截图中先是定义了ChunChun这个类 实现了ChunChunInterface这个接口     后来在使用动态代理的时候为什么如截图中的Proxy.newProxyInstance(chunChun.getClass.getClassLoader(),chunChun.getClass.getInterface(),new InvocationHandler(){}) 里面种ChunChun不是一个类吗  不是应该用ChunChun.class吗  为什么是chunChun.getClass  还有为什么是小写chunChun  不是大写的ChunChun
作者: 老骥伏枥    时间: 2012-12-20 12:22
哎  怎么没人指点一下啊  伤心啊 现在论坛人气太差了啊
作者: 张学永    时间: 2012-12-20 12:50
你第一个截图是生成了一个方法,方法传入的参数是一个对象,也就是说你传入的
小写的chunChun是一个实例对象,实例对象就用getClass()方法来获得字节码对象了。
作者: 老骥伏枥    时间: 2012-12-20 13:16
张学永 发表于 2012-12-20 12:50
你第一个截图是生成了一个方法,方法传入的参数是一个对象,也就是说你传入的
小写的chunChun是一个实例对 ...

我看代码了 貌似没有生成实例对象啊   你说是实例对象 应该有代码 ChunChun chunChun=New ChunChun()啊  可是我没看视频没写这句这句代码啊
作者: 老骥伏枥    时间: 2012-12-20 17:11
郁闷啊  没人讨论吗
作者: 张敬培    时间: 2013-1-16 14:34
在你的第一个图片中,在getChunChunProxy(ChunChunInterface chunChun);中,chunChun被当作一个ChunChunInterface的一个对象传进来的,所以在newProxyInstance()方法中只能使用chunChun.getClass来获得class文件。
当你在测试类中调用getChunChunProxy()方法时,因为ChunChun实现了ChunChunInterface接口,所以可以把ChunChun类的一个对象当参数传递进去。




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