设计模式理解(适配器和装饰者)

在学习设计模式时,阅读了设计模式的理论,研究了JDK中一些对设计模式的具体应用例子,对一些设计模式有了进一步认识。不同设计模式之间有其细微差别,现在就适配器和装饰者这两者之间的区别,说一下我的理解。

[b]适配器adapter:[/b]
有A、B、C三个类,A类是适配器,B类有个声明出来的方法methodWithinB要被调用,但是这个B类方法methodWithinB里的内容不能使用或者是想用C类里的方法methodWithinC中的内容。此时,B类方法methodWithinB需要使用适配器来达到此目的,[color=red]该方法在实际使用时,原有的逻辑内容已经不存在了。[/color]
具体实现:适配器A继承被适配者B,A类override重写B类方法methodWithinB,将C类作为A类一个属性传给A,A类方法 methodWithinB调用C类方法methodWithinC。A类完成了将对B类方法methodWithinB的调用转移到C类方法methodWithinC。

[b]装饰者 decorator:[/b]
有A、B两个类,A类是装饰者,B类是被装饰者,由A类负责去使用B类,[color=red]在调用B类方法时,不改变B类方法里原有的逻辑内容[/color],只是在调用B类方法时,在调用它的位置前后增加需要补充的额外逻辑。
具体实现:将B类作为A类的一个属性实例,传给A类的一个属性,A类负责去调用B类实例中的方法,调用时,A类根据需要加上其他的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值