Java 中的I/O (三)-- MarsChen Java4Android 教程学习笔记

来源:互联网 发布:台达plc编程教学 编辑:程序博客网 时间:2024/06/08 08:06

处理流的使用
处理流:BufferedReader ,全称“字符输入处理流”,常用readLine() 方法,一次可以读一行,返回字符串。将FileReader 对象传入BufferedReader ,执行readLine() 方法就可以执行一行。
fileReader=new FileReader("【地址】");
bufferedReader = new BufferedReader(fileReader);
String line=bufferedReader.readLine();
如果要读全部文字,可用while 语句,当line==null 的时候跳出。

“装饰者(Decorator)”模式
如下复杂的继承模式,需要创建很多重复的函数,此时可以利用装饰者模式。
Java 中的I/O (三)-- MarsChen Java4Android 教程学习笔记 - Roller44 - 病友说
 

interface Worker{
public void doSomeWork();
}

public class MuJiang implements Worker{
public void doSomeWork(){
System.out.println("修门窗。");
}
}

public class ShuiGuanGong implements Worker{
public void doSomeWork(){
System.out.println("修水管儿。");
}
}

class AWorker implements Worker{
public Worker wk;
public AWorker(Worker wk){
this.wk= wk;
}
public void doSomeWork(){
System.out.println("来自A公司:");
wk.doSomeWork();
}
}

class BWorker implements Worker{
private Worker wk;
public BWorker(Worker wk){
this.wk=wk;
}
public void doSomeWork(){
System.out.println("B公司的:");
wk.doSomeWork();
}
}

public class AskForHelp{
public static void main (String args[]){
MuJiang mj=new MuJiang();
AWorker aw=new AWorker(mj);
aw.doSomeWork();

ShuiGuanGong sgg=new ShuiGuanGong();
BWorker bw=new BWorker(sgg);
bw.doSomeWork();
}
}

Java 中的I/O (三)-- MarsChen Java4Android 教程学习笔记 - Roller44 - 病友说
 

在上面的例子中,MuJiang 和ShuiGuanGong 是被装饰对象,AWorker 和BWorker 是装饰对象。在处理流中,BufferedReader 就是装饰对象,FileReader 是被装饰对象。


0 0
原创粉丝点击