菜鸟版JAVA设计模式—适配器模式,装饰模式,代理模式异同

本文探讨了适配器模式、代理模式及装饰器模式的应用场景与技术细节。重点对比了三种模式在代码实现上的不同,特别是适配器模式如何实现新接口以兼容原有接口,以及代理模式与装饰器模式在暴露原始类方面的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        您好,您提的问题真心很好,这也是我自己一直没有想到的问题,其实三种模式都可以去解决上面的问题。说白了,这三种模式都是不改原类,新建一个类丰富原类的功能。
但是我觉得是这样(仅仅是我觉得),我们首先应该从代码的实现上来看这三种的区别。
我们先单独拿出适配器和其他两种对比最大的区别就是适配器是实现了一个新的接口,这个在我们项目开发中就代表了客户是否给你新的规范,你必须要按照着客户的新规范去开发又不能丢了老的。客户要求你用A接口去完成B接口的事情,所以还是那句话,看看有没有新的规范。
剩下2种模式,代理模式和装饰器模式就更容易找出区别,从代码上看,代理模式绝对不会暴露原类,他的目的就是想让你隐藏原类,通过一个中介去调用最终的类。本质在于拦截,就如同spring aop控制事务日志一样。。

装饰器模式个相当于把一个模型放在你面前,你自己去组合,组合顺序随意。这两种真心没有什么可比性,区分的最明显的区别你是不是要暴露真正调用的类。



评论出处 http://blog.youkuaiyun.com/lulei9876/article/details/39994825

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值