为了账号安全,请及时绑定邮箱和手机立即绑定

模式的秘密---代理模式

难度中级
时长 2小时 0分
学习人数
综合评分9.70
184人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.7 逻辑清晰
public Object invoke(Object proxy, Method method, Object[] args) 返回的Object可以改变实际被代理方法的返回值,但如果我们不想改变被代理方法的返回值,可以这么做:
Object o = method.invoke(target,args);//target为传入的被代理对象
return o;
可能对大家有用。

已采纳回答 / 微博搞笑排行榜
个人理解:一群鸟,他们区分自己与兔子的区别是看有没有翅膀。 如果对方有翅膀(接口) 就视为自己人,可以一起飞...同样,他们实现同样的接口 再传参的时候就避免了不同类的差异性(因为参数类型是那个接口)我 可能理解的不到位 ,那样的话 还请指正 我是小白
无聊的我发现这课实际上只有77分钟,没有2小时......
这举得例子好扯淡啊 彻底晕了 move()方法调来调去的

最新回答 / 慕斯1939483
invocationHandler源码:public Object invoke(Object proxy, Method method, Object[] args)        throws Throwable;有参数时会传进去参数值,当没有参数时,可以理解为参数值为null(也就是m.move()使用时,可以理解为也会有个参数,只是值是null)也就是说:视频里m.invoke(target) == m.invoke(target,null)测试时:m.move("200");
这个地址我是自己的理解,有兴趣地可以看看:http://note.youdao.com/noteshare?id=d8f1ad336db726baab0a66c6703d635d&sub=A7551F387C024DD7AF6BB847B02F4743
学习代理模式只看代码,但不讲原理,不理解代理模式,是没有用处的。比如说什么是代理模式?为什么必须要实现相同的接口呢?什么时候使用代理模式?代理模式有什么好处?什么是静态代理?什么是动态代理?动态代理与静态代理的区别?代理类是否可以有自己的个性?等等
学习动态代理
基础不牢,听起来有些费力。
把简单的东西讲复杂了感觉,先写完代码再加引号吧。
去学习学习反射,过来再看秒懂 好高骛远只能摔得惨不忍睹
课程须知
本课程是 Java 开发课程的高级课程,希望各位小伙伴们在学习本课程之前,了解以下内容: 1)初步具备面向对象的设计思维 2)了解多态概念 3)了解反射
老师告诉你能学到什么?
1、代理模式概念机分类 2、代理模式应用场景 3、掌握静态代理、动态代理运用 4、理解JDK动态代理实现原理

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消