内容:1、输入流和输出流(相对内存而言),输入(读)、输出(写)。可写相对路径或绝对路径;
2、为了保证流正常释放,需要在try...catch...finally中的finally后接手动释放.close;
3、写入时注意后接.flush,确保全部写入,同时写入可分为覆盖和append两种,注意取舍;
4、FileReader,字符文件输入流;BufferedReader,带有缓冲区的字符输入流;
InputStreamReader,转换流。其中BufferedReader()的参数须为Read形式;
5、根据流出现的位置,可以将流分为包装流(处理流)、节点流。如上例,Read形式的流为
节点流,Buffer流为包装流。进行.close操作时,只需关闭外层的包装流即可;
6、DataOutputStream:存入二进制数据带类型,取出需按原顺序;
PrintStream:标准的输出流,默认打印到控制台;
ObjectInputStream,针对内存中创建的对象,要保存至硬盘中,这个过程就是序列化的过程
7、装饰者模式:方法进行扩展,但不改动原方法:
一、继承,重写(耦合性高,不推荐);
二、装饰者模式:*要求装饰者中含有被装饰者的引用
-如调用B的close方法,关闭装饰者的方法,其内含有的被装饰者方法自动调用。
*要求装饰者和被装饰者应该实现同一个类型
问题:相对路径出错,未找到文件。