装饰者模式(待记录)

对扩展开放,对修改关闭。

利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态的进行扩展。

java io类库都是用来包装inputstream的,重写它的read方法。

装饰者和被装饰者需要有相同的类型,实现同一个接口,或继承统一抽象类。如果依赖继承,那么类的行为只能在编译时静态决定。换句话说,行为如果不是来自超类,就是子类覆盖后的版本,利用组合,可以运行时把装饰者混合者用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值