Java核心基础加强系列-序列化和反序列化

序列化和反序列化的概念

所谓序列化,即将一个Java对象的状态序列化成一串二进制流,从Java层面来说,即序列化成一个字节数组byte[]。

反序列化,即将字节数组重新还原成Java对象。 那么到底为什么要这么做呢?

我们知道在Java程序运行时,Java中的对象是保存在堆内存中的,他们的生命周期随着jvm的关闭而结束,但是往往我们有一些需求,在jvm停止时,需要将对象的状态信息保存下来,在程序重新启动时,加载保存的信息。这时候就需要序列化了,将Java对象的状态信息序列化成二进制串,便于保存。

在微服务或者分布式的架构中,涉及到方法的跨进程调用,即RPC,跨进程调用必然涉及到网络通信,序列化后便于在网络中进行传输。

暂无评论
发表新评论