JAVA IO流的简单总结+收集日志异常信息

1.字节流
IuputStream 所有字节输出流的超类 。 抽象类
---- FileInputStream
---- BufferedInputStream:提供数据的读取效率,拓展方法(内部维护了一个8k字节的数组)

OutputStream 所有字节输出流的超类。 抽象类
---- FileOutputStream
---- BufferedOutputStream:提高数据的写入效率,拓展方法(内部维护一个8k字节数组)

写入数到磁盘: 1.通过刷新flush(), 2.close(),3.数据在数组中已经存满

2.字符流
Reader:字符输入流的超类
----FileReader
----BufferedReader:提高数据的读取效率,拓展方法(内部维护了一个字符数组,大小8192个字符)

Write:字符输出流的超类
----FileWriter
维护了1024个字符是字符
写入数到磁盘:1.通过刷新flush(),2.close().3.数据在数组中已存满
----bufferedWriter:提高数据的写入效率,拓展方法(内部维护一个字符数组,大小8192个字符)
3.序列流:

SequenceInputStream 可以将多个字节输入流串联起来,再将这些字节输入流一个一个读取数据


4.对象输入输出流:

ObjectInputStream

ObjectOutputSream

使用注意点:
1.想要通过对象流读取或者写入对象到磁盘,需要使对象的所属类实现serializable接口,serializable接口,没有方法只是做个标记
2.当改变类中的属性值,仍然可以读取数据,需要设置serialVersionUID为一个常量:private static final long serialVersionUID = 1L;
3.如果不想将某个属性写入到磁盘,可以在用transient关键字来修饰

收集异常日志信息

原文地址:https://www.cnblogs.com/mumuda/p/6192878.html