IO学习(十六)装饰设计模式

在IO学习中,经常会用到处理流,而处理流实际上就是对节点流的装饰,是对原有流的性能的提升

这里就使用到了装饰设计模式


举个简单例子帮助理解

假设这里有个类Voice,但是声音很低,不至于让全场的人听到,那么我们再写一个类MaxVoice扩音器

将Voice类的声音扩大,这样两个类就联系到一起了,而MaxVoice类就起到了装饰Voice的作用,

增强了Voice类的功能


看看代码实现,Voice就不写了,为简单起见,Voice类中只有一个sound属性,并且有getset方法

public class MaxVoice{
	private Voice voice;

	public MaxVoice(Voice voice){
		this->voice=voice;
	}

	public void setHighVoice(){
		voice.getSound()*1000;
	}
}





简单看看类与类之间的关系

1.依赖:形参 局部变量,在调用方法的时候才会依赖这个类

2.关联:属性关联,根据关联的强度可以分为聚合和组合两种关联方式

聚合:整体与部分,不一致的生命周期

组合:整体与部分,一致的生命周期

3.继承:父类与子类

4.实现:接口和实现类


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值