A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

截图中先是定义了ChunChun这个类 实现了ChunChunInterface这个接口     后来在使用动态代理的时候为什么如截图中的Proxy.newProxyInstance(chunChun.getClass.getClassLoader(),chunChun.getClass.getInterface(),new InvocationHandler(){}) 里面种ChunChun不是一个类吗  不是应该用ChunChun.class吗  为什么是chunChun.getClass  还有为什么是小写chunChun  不是大写的ChunChun

5 个回复

倒序浏览
哎  怎么没人指点一下啊  伤心啊 现在论坛人气太差了啊
回复 使用道具 举报
你第一个截图是生成了一个方法,方法传入的参数是一个对象,也就是说你传入的
小写的chunChun是一个实例对象,实例对象就用getClass()方法来获得字节码对象了。
回复 使用道具 举报
张学永 发表于 2012-12-20 12:50
你第一个截图是生成了一个方法,方法传入的参数是一个对象,也就是说你传入的
小写的chunChun是一个实例对 ...

我看代码了 貌似没有生成实例对象啊   你说是实例对象 应该有代码 ChunChun chunChun=New ChunChun()啊  可是我没看视频没写这句这句代码啊
回复 使用道具 举报
郁闷啊  没人讨论吗
回复 使用道具 举报
在你的第一个图片中,在getChunChunProxy(ChunChunInterface chunChun);中,chunChun被当作一个ChunChunInterface的一个对象传进来的,所以在newProxyInstance()方法中只能使用chunChun.getClass来获得class文件。
当你在测试类中调用getChunChunProxy()方法时,因为ChunChun实现了ChunChunInterface接口,所以可以把ChunChun类的一个对象当参数传递进去。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马