Bootstrap

Java基础IO流之序列化流的使用

☆引言☆

        大家好,我是痛而不言笑而不语的浅伤。上一章我们学习了IO流中的递归,本章我们一起来学习IO流中的序列号流。这篇文章来自我的《吃透JavaSE基础》专栏中,想要学习更多JavaSE基础,订阅专栏《吃透JavaSE基础》。对文章中描述错误的希望大家积极指出。


🎉博客首页:痛而不言笑而不语的浅伤

🥳欢迎关注👍点赞收藏🎊留言

❤:热爱Java学习,期待一起交流!

🙏🏻作者水平很有限,如果发现错误,求告知,多谢!

🥰有问题可以私信交流!!!


                                                                我想要个关注

目录

☆引言☆

🚀什么是序列化流?

🚀序列化流的分类

 🛸序列化

🚁作用

🚁构造方法

🚁特有的成员方法

🚁使用步骤

🛸反序列化

🚁作用

🚁构造方法

🚁特有的成员方法

🚁使用步骤

🛸transient关键字

🛸InvalidClassException异常

🚀练习:序列化集合

🚀总结:


🚀什么是序列化流?

        Java提供了一种对象序列化的机制。用一个字节系列可以表示一个对象,该字节系列包含对象的数据、对象的类型、对象中存储的属性等信息。通俗易懂的说,就是把我们创建的对象进行保存到文件中和从文件中读取出来的操作过程就叫序列化流。

🚀序列化流的分类

        序列化流分为序列化和反序列化。

        把字节序列写出到文件之后,相当于文件中持久保存了一个对象信息,也就是序列化。

反之,该字节序列还可以从文件中读取回来,重构对象,也就是反序列化。

那具体的怎么使用,我们继续往下学吧!我们先看图理解一下吧:

 🛸序列化

        把对象以流的方式,写入到文件中保存,叫写对象,也叫对象的序列化。对象就是Object,转换成字节,写入字节流就是OutputStream,那我们就使用ObiectOutputStream类把对象序列化。

ObiectOutputStream既然是字节流,我们就看一下它的继承关系如下:

ObjectOutputStream extends OutputStream extends Object

        既然要学习序列化,也就是学习ObiectOutputStream这个类,我们就从它的作用、构造方法、成员方法和使用步骤几方面学习。

🚁作用

它的作用就是把对象以流的方式写入到文件中进行保存

🚁构造方法

ObjectOutputStream(OutputStream out) 创建写入指定 OutputStream 的 ObjectOutputStream。

参数:

OutputStream out:字节输出流

🚁特有的成员方法

void writeObject(Object obj) 将指定的对象写入 ObjectOutputStream。

🚁使用步骤

        1.创建ObjectOutputStream对象,构造方法中传递字节输出流

        2.使用ObjectOutputStream对象中的方法writeObjectW方法,把对象写到文件中

        3.释放资源

        既然我们要把对象进行序列化首先要创建一个

;