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关键字来修饰
收集异常日志信息