什么是序列化?在什么情况下将类序列化?

Posted sunajing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是序列化?在什么情况下将类序列化?相关的知识,希望对你有一定的参考价值。

序列化就是一种用来处理对象流的机制,所谓对象流就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输与网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。

 

序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。

 

序列化:序列化是将对象转换为容易传输的格式的过程,例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。

 

是对象永久化的一种机制。
确切的说应该是对象的序列化,一般程序在运行时,产生对象,这些对象随着程序的停止运行而消失,但如果我们想把某些对象(因为是对象,所以有各自不同的特性)保存下来,在程序终止运行后,这些对象仍然存在,可以在程序再次运行时读取这些对象的值,或者在其他程序中利用这些保存下来的对象。这种情况下就要用到对象的序列化。

 

 

对象序列化的最主要的用处就是在传递,和保存对象(object)的时候,保证对象的完整性和可传递性。譬如通过网络传输,或者把一个对象保存成一个文件的时候,要实现序列化接口 。

以上是关于什么是序列化?在什么情况下将类序列化?的主要内容,如果未能解决你的问题,请参考以下文章

Java基础之对象序列化

在没有[xmlns =“”]的情况下将对象序列化为XML

如何在不创建大缓冲区的情况下将 .NET 对象的大图序列化为 SQL Server BLOB?

Python将类序列化为JSON [重复]

c#中序列化是啥,怎么用,啥情况下用,不用有啥后果?

java 序列化