java----装饰类思想
来源:互联网 发布:python生成随机数 编辑:程序博客网 时间:2024/06/05 13:04
/** * 需求: 读取文件时readLine() 实际调用的是 read()方法,可以自定义一个readLine()方法 * 这个程序的作用是:调用自己写的和readLine()一样的,读取文件的方法,一次读取一行。 * *在这里:用到了装饰类的思想,在原有的功能基础上对原有功能的加强。 * * 装饰类和继承的区别: * 装饰类比继承类要灵活,避免继承体系的臃肿。 * 降低了类与类之间的关系,。 * * 装饰类因为增强已有对象,具备的功能是和已有的是相同的(比如读取方法read() 和readLine()方法都是读取), * 只不过提供了更强的功能。 * 所以装饰类和被装饰类通常属于同一个体系。 * * @author 六道 * */import java.io.*;class MyBufferedReader{ private FileReader r = null; MyBufferedReader(FileReader r) {this.r = r; } public String ReadLine() throws IOException {StringBuffer sb = new StringBuffer();// Stringbuffer() 构造一个其中不带字符的字符串生成器,初始容量为 16 个字符。int ch = 0;while ((ch = r.read()) != -1){ if (ch == '\r')// 如果文件读到\r {continue; } if (ch == '\n')// 如果文件读到\n {return sb.toString(); } if(sb.length() != 0)//如果到了结尾 因为结尾没有回车符 所以到了结尾也要返回数据 {return sb.toString(); } else {sb.append((char)ch);//这里添加的时候注意要强制转换成char类型 }}return null; } public void myClose() throws IOException {r.close(); }}public class ReadLineDemo1{ public static void main(String[] args) throws IOException {FileReader fr = new FileReader("buf.txt");MyBufferedReader mybuf = new MyBufferedReader(fr);String len = null;while ((len = mybuf.ReadLine()) != null){ System.out.println(len);}mybuf.myClose(); }}
------- android培训、java培训、期待与您交流! ----------
- java----装饰类思想
- Java装饰类的设计思想
- 《Java编程思想》中的装饰模式
- JAVA 装饰类(装饰设计模式)
- 装饰者模式-装饰java.io类
- Java IO 装饰类
- 简述装饰模式实现思想
- Java设计模式 装饰类
- java编程思想第4版第15章混型笔记及装饰器模式
- 《Java编程思想》--集合类
- 设计思想学习—装饰者模式
- java思想!
- java思想
- java oop思想编程思想
- python装饰器装饰类
- java基础--IO流之装饰类与自定义装饰类
- JAVA设计模式-装饰设计模式-继承体系的由来和装饰类的优化
- java二十三种设计模式------(一)装饰模式 装饰类VS子类继承
- 定制防火墙 应该如何选择硬件和系统
- 机器人操作系统构架
- 用户宜积极接纳创新数据库技术
- eclipse 导入myeclipse web项目
- 字符串匹配的KMP算法(部分匹配表:前缀---后缀)
- java----装饰类思想
- python 读取 excel 的方法封装
- linux C串口常规设置参考
- struts2配置文件读取顺序
- java-----IO流 操作字节数组的流对象,对象序列化,打印流,随机存储文件,合并流,管道流,操作基本数据类型的流对象
- Python的Excel接口 xlrd
- Git详解之一 Git起步
- openJTAG学习笔记二
- 串的相关操作