/**
*
* @author wuyong
*装饰设计模式:
*当想要对已有的对象进行功能增强时,
*可以定义一个类,将已有对象传入, 基于已有的功能,并提供加强功能
*那么自定义的该类称为装饰类。
*
*装饰模式, 比继承灵活。。 避免了继承体系的臃肿
*而降低了类与类之间的关系
*
*装饰类因为增强已有对象, 具备的功能和已有的是相同的, 只不过提供了更强的功能。
*/
public class MyBufferedReaderextends Reader{
//装饰设计模式
private Reader fr;
MyBufferedReader(Reader fr) {
this.fr =fr;
}
//自定义可以一次读一行的方法。
public String myReadLine() {
StringBuilder sb =new StringBuilder();
int ch = 0;
try {
while((ch =fr.read()) != -1) {
if (ch=='\r')
continue;
if (ch=='\n')
returnsb.toString();
else {
sb.append(ch);
}
}
if (sb.length() != 0) {
returnsb.toString();
}
returnnull;
} catch (IOExceptione) {
// TODO Auto-generated catch block
e.printStackTrace();
}
returnnull;
}
public void myclose() {
try {
fr.close();
} catch (IOExceptione) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public int read(char[]cbuf, int off,int len) throws IOException {
// TODO Auto-generated method stub
return 0;
}
@Override
public void close()throws IOException {
// TODO Auto-generated method stub
}
}
java IO读写装饰设计模式
最新推荐文章于 2021-09-25 17:57:09 发布