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

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

难度中级
时长 2小时 0分
学习人数
综合评分9.70
184人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.7 逻辑清晰
  • 动态代理
    查看全部
  • 聚合:一个类中使用另一个类的对象。 1、聚合代理优于继承代理。因为实现功能叠加的情况下,聚合代理通过相互代理可以实现功能重用,而继承代理必须写多个类来实现多功能叠加。 2、但静态代理只能代理一种类型的被代理类,换个类型的就不行了,这需要动态代理 静态代理的两种实现方式对比(继承方式和聚合方式) 案例--代理类功能的叠加 1. 继承的方式:如果使用继承的方式来实现我们代理功能的叠加, 我们的代理类会无限的膨胀下去。 2. 聚合的方式: 由于代理类和被代理类都实现了相同的接口,那么代理类的构造参数就可以传入该 相同的接口,这样在后面功能叠加的时候就可以传入其他功能的代理类,因为他们 都实现了相同的父接口。从而达到功能叠加的作用。 eg:汽车类,先记录日志再记录时间 Car car = new Car(); CarTimeProxy ctp = new CarTimeProxy(car); CarLogProxy clp = new CarLogProxy(ctp); clp.move(); 先记录时间再记录日志 Car car = new Car(); CarLogProxy clp = new CarLogProxy(car); CarTimeProxy ctp = new CarTimeProxy(clp); ctp.move(); 聚合的方式比继承的方式灵活很多,通过聚合的方式,代理之间也是可以相互传递的, 相互组合。
    查看全部
  • 1、聚合代理优于继承代理。因为实现功能叠加的情况下,聚合代理通过相互代理可以实现功能重用,而继承代理必须写多个类来实现多功能叠加。 2、但静态代理只能代理一种类型的被代理类,换个类型的就不行了,这需要动态代理 静态代理的两种实现方式对比(继承方式和聚合方式) 案例--代理类功能的叠加 1. 继承的方式:如果使用继承的方式来实现我们代理功能的叠加, 我们的代理类会无限的膨胀下去。 2. 聚合的方式: 由于代理类和被代理类都实现了相同的接口,那么代理类的构造参数就可以传入该 相同的接口,这样在后面功能叠加的时候就可以传入其他功能的代理类,因为他们 都实现了相同的父接口。从而达到功能叠加的作用。 eg:汽车类,先记录日志再记录时间 Car car = new Car(); CarTimeProxy ctp = new CarTimeProxy(car); CarLogProxy clp = new CarLogProxy(ctp); clp.move(); 先记录时间再记录日志 Car car = new Car(); CarLogProxy clp = new CarLogProxy(car); CarTimeProxy ctp = new CarTimeProxy(clp); ctp.move(); 聚合的方式比继承的方式灵活很多,通过聚合的方式,代理之间也是可以相互传递的, 相互组合。
    查看全部
  • 1、静态代理:代理和被代理对象在【代理之前】都是【确定】的。他们都实现【相同的接口或者继承相同的抽象类】 2、代理实现方法: (1)继承法:代理类直接【继承】被代理类,实现其原有方法,并添加一些额外功能 (2)聚合方法:代理类实现【相同的功能接口:很重要,事项相同接口,不同代理也可以进行相互代理】,并在内声明一个被代理类的对象(类似封装),通过内部对象实现其原有方法,并添加额外功能
    查看全部
  • 代理模式实现-静态代理
    查看全部
  • 代理模式 1、概念:为其他对象提供一种代理,以控制对这个对象的访问(例如火车站代售处)。代理对象起到中介作用,可去掉功能服务或增加额外的服务。 代理模式的分类: 远程代理模式:为不同地理的对象提供局域网代表对象(例子:通过远程代理可以监控各个店铺,使之可以直观的了解店里的情况) 虚拟代理:根据需要将资源消耗很大的对象进行延迟,真正需要的时候进行创建 保护代理:控制用户的访问权限 智能引用代理:提供对目标对象提供额外的服务(火车票代售处)
    查看全部
  • 常用代理模式
    查看全部
  • 静态代理概念: 聚合的方法:在一个对象中调用另一个对象,通过将另一个对象以传参的方式传进来
    查看全部
  • 代理模式的分类: 远程代理模式:为不同地理的对象提供局域网代表对象(例子:通过远程代理可以监控各个店铺,使之可以直观的了解店里的情况) 虚拟代理:根据需要将资源消耗很大的对象进行延迟,真正需要的时候进行创建 保护代理:控制用户的访问权限 智能引用代理:提供对目标对象提供额外的服务(火车票代售处)
    查看全部
  • 代理模式定义:
    查看全部
  • 保护代理 智能引用代理
    查看全部
  • JDK动态代理与CGLIB动态代理之间的区别
    查看全部
  • 代理模式定义:
    查看全部
  • 代理模式的定义
    查看全部
  • 课程目标
    查看全部

举报

0/150
提交
取消
课程须知
本课程是 Java 开发课程的高级课程,希望各位小伙伴们在学习本课程之前,了解以下内容: 1)初步具备面向对象的设计思维 2)了解多态概念 3)了解反射
老师告诉你能学到什么?
1、代理模式概念机分类 2、代理模式应用场景 3、掌握静态代理、动态代理运用 4、理解JDK动态代理实现原理

微信扫码,参与3人拼团

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

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