对象流
对象流属于高级流,通过这组流可以方便的读写java中的任何对象.
对象输出流:用于写出对象,由于底层读写都是字节读写,所以无论什么样的数据都要转换为字节才能写出.对象输出流可以自行将给定的对象转换为一组字节然后写出.这样可以省去我们将对象按照结构转化为字节的麻烦.
ObjectOutputStream提供了写对象的方法: voidwriteObject(Object obj)
该方法会将给定的对象转换为一组字节然后通过其处理的流写出
先通过OOS将对象转换为一组字节,然后再将该组字节通过FOS
写入到了文件当中,这里涉及到两个操作:
1:对象序列化.将一个对象按照结构转换为一组字节的过程
2:对象持久化.将该对象写入文件(硬盘中)的过程.
对象输入流:用于进行对象反序列化
ObjectInputStream提供方法:Object readObject()
该方法可以读取字节并还原为指定的对象 需要确保OIS读取的字节是通过对象输出流(OOS) 将一个对象写出的字节.否则会抛出异常.