java IO流_装饰设计模式_练习

package IO流_装饰设计模式_pattern;
/**

  • 在IO流里经常使用处理流;处理流就是对节点流的包装;这就是装饰.即对原有的功能增强,性能提升
  • 装饰的例子:对原汽车的马力不够及外观不漂亮进行加大马力和外观重新装饰;或者如讲话声音小用扩音器增加音量
    

*/
public class Voice {//Voice声音
private int voice = 10;
//无参构造器
public Voice() {
super();
}

//get与set
public int getVoice() {
	return voice;
}
public void setVoice(int voice) {
	this.voice = voice;
}
/**
 * 如:正常的说话
 */
public void say(){//say说;
	System.out.println("没有扩音前音量");
	System.out.println(voice);	
}

}
//------------------------------------------------------------
package IO流_装饰设计模式_pattern;
/**

  • 创建扩音器即对 Voice声音放大
  • 类与类之间的关系
    
  •  1.依赖:用形参或者称为局部变量,在调用这个方法时才会调用这个类
    
  •  2.关联:2个属性
    
  •  	1)聚合:整体与部分;不一致的生命周期  如:人与手
    
  •  	2)组合:整体与部分;一致的生命周期共存亡;如:人与大脑
    
  •  3.继承:父子类关系
    
  •  4.实现;接口与实现类的关系  ;接口是特殊的抽象类
    

/
public class Amplifier {//Amplifier扩大器
private Voice voice ;
//无参,有参构造器
public Amplifier() {
super();
}
public Amplifier(Voice voice) {
super();
this.voice = voice;
}
/
*
* 功能增强
/
public void say(){
//将 voice变量声音放大
System.out.println(“扩音后音量”);
System.out.println(voice.getVoice()1000);
}
}
//----------------------------------------------------
package IO流_装饰设计模式_pattern;
/

  • 实现
    */
    public class App {

    public static void main(String[] args) {
    Voice v = new Voice();
    v.say();
    Amplifier am = new Amplifier(v);
    am.say();
    }

}
//结果----------------------------------------------------
没有扩音前音量
10
扩音后音量
10000

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值