java中的IO二
java中流分为节点流和处理流,IO一中的案例都是节点流
一、处理流的使用实例
二、装饰者模式
以上BufferReader的用法就是装饰者模式
Decorator就是动态地给对象增添行为
如果要实现一个A公司的水管工的操作,用继承的话特别多,考虑用装饰者模式
定义一个工人接口
interface Worker{
public void doSomething();
}
定义一个水管工实现工人接口
class WaterWorker implements Worker(){
public void doSomething(){
System.out.println("修水管");
}
}
定义一个装饰者A公司实现工人接口
class CompanyA implements Worker(){
//定义一个成员变量
private Worker worker;
//定义一个构造函数
public CompanyA (Worker worker){
this.worker=worker;
}
public void doSomething(){
System.out.println("你好");
worker.doSomething();
}
}
在主类中实现A公司的水管工修水管
class Test(){
public static void main(String args[]){
//生成一个A公司水管工对象
WaterWorker w=new waterWorker ();
CompanyA Acompanyw=new CompanyA (w);
Acompanyw.doSomething();
}
}
三、节点流和处理流的关系