黑马程序员_Java中IO与装饰者设计模式
来源:互联网 发布:steam 汉化 知乎 编辑:程序博客网 时间:2024/05/01 05:42
------- android培训、java培训、期待与您交流! ----------此方法是Reader的子类,它属于字符流同时也是输入流还是处理流,最核心的方法是
abc
当想要对已有的对象进行功能增强时,
------- android培训、java培训、期待与您交流! ----------
一、处理流的使用实例
BufferedReader 对象:
此方法是Reader的子类,它属于字符流同时也是输入流还是处理流,最核心的方法是
<span style="font-weight: normal;">public String readLine() throws IOException</span>
此方法可以读取一个文本行
生成BufferedReader 对象的方法:
BufferedReader in = new BufferedReader(new FileReader("foo.in"));
由此可看出BufferReader对象实例化会接收一个Reader对象及其子类当参数。(test.txt文件中内容是
abc
cba
efg)
class BufferReaderDemo{public static void main(String [] args){//声明FileReader对象,节点流FileReader fr = null;//声明BufferedReader对象,处理流BufferedReader br = null;try{//实例化FileReader对象,传入当前目录下txt文件名参数fr = new FileReader("test.txt");//将FileReader对象作为参数传入BufferedReaderbr = new BufferedReader(fr);String line =null;//循环读取文本内容while(true){//每次读取一行,读取到内容返回内容,读取文件末尾返回nullline = br.readLine();if(line == null){break;}//输出读取的内容System.out.println(line);}}catch(Exception e){System.out.println(e);}finally{try{//分别关闭打开的流对象br.close();fr.close();}catch(Exception e){System.out.println(e);}}}}运行结果:
abccbaefg
二、装饰者模式
当想要对已有的对象进行功能增强时,
可以定义类,将已有对象传入,基于已有的功能,并提供增强功能。
那么自定义的该类称为装饰类(比如:BufferedReader),被增强的类称为被装饰类(比如:Reader)。
//创建一个普通类有一个chifan方法class Person{public void chifan(){System.out.println("吃饭");}}//创建一个增强类,对chifan方法进行增强class SuperPerson extends Person{private Person p;SuperPerson(Person p){this.p = p;}public void superChifan(){System.out.println("开胃菜");p.chifan();System.out.println("甜点");}}class PersonDemo{public static void main(String [] arg){Person p = new Person();p.chifan();SuperPerson sp = new SuperPerson(p);sp.superChifan();}}
0 0
- 黑马程序员_Java中IO与装饰者设计模式
- 黑马程序员_java装饰模式
- 黑马程序员_Java基础_装饰设计模式
- 黑马程序员_java的IO流(对第十九课字符缓冲区及装饰设计模式的总结)
- 47.黑马程序员-IO流缓冲区、装饰设计模式
- 黑马程序员——装饰设计模式(io流)
- 黑马程序员-Java IO和装饰设计模式
- 黑马程序员 java学习笔记3-IO流之字节流与装饰设计模式
- 黑马程序员------装饰设计模式
- 黑马程序员-装饰设计模式
- 黑马程序员-装饰设计模式
- 黑马程序员_日记(一)_java基础_装饰设计模式思想
- 黑马程序员 java基础IO装饰者模式
- 黑马程序员_java 单例设计模式
- 黑马程序员_java入门_设计模式
- 黑马程序员_java单例设计模式
- 黑马程序员_JAVA单例设计模式
- 黑马程序员_JAVA 单例设计模式
- itunes 无法完成您的iTunes 请求问题
- 组合模式学习笔记
- git提交代码的常用操作
- 马程序员学习笔记——红黑树解析一
- shell中单中括号与双中括号的区别
- 黑马程序员_Java中IO与装饰者设计模式
- 已退役
- malloc和new的区别,new和operator new的区别,分配器介绍
- 二、安全
- Oracle添加数据库以及删除数据库
- opencv存储视频数据
- cocos2dx的lua绑定 【转】
- 三、铁路票务架构
- 数据库稠密索引与稀疏索引