Day21 缓冲区 装饰设计模式 字节流
Day21
缓冲区 装饰设计模式 字节流
装饰设计模式
- 当对一组对象的功能进行增强时,就可以使用该模式进行问题的解决。
- 和继承都能实现一样的特点,进行功能的扩展增强。
- 适用于某种技术封装并和其他对象进行封装。
- 比继承更加灵活。
特点: - 装饰类和被装饰类都必须所属于同一个接口或者父类。
字符流的缓冲区
- 可以提高读写效率。包含BufferedWriter和BufferedReader。
- 必须结合流才可以使用,并且对流的功能进行了增强。
write方法
- BufferedWriter(Writer out);
- BufferedWriter(Writer out, int size);
- 关缓冲区的时候会把相应的流也关闭。
- 必须搭配flush()使用,否则的话不会真的写入文件。
read方法
- BufferedReader(Reader in);
- BufferedReader(Reader in, int size);
- 可以使用readLine(),每次调用读取一行,当到达EOF时返回null。不包含终止符。
LineNumberReader类
- 可以跟踪行号
- setLineNumber(int)
- getLineNumber(int)
字节流
除了操作文字还能操作如图片、音乐等文件。
和字符流方法类似,但是其所用的缓冲区是字节byte数组。
FileOutputStream
- 没有flush方法
- write方法只接受byte数据,需要用到getBytes()来转换其他的数据类型。
浙公网安备 33010602011771号