启发自这篇文章:
其实,我主要想讲的是,为什么要序列化?
程序里的对象,也是根据程序源代码,建立的。
很多文章都是说,序列化的原因是要将对象编码称为字节流。字节流才能①保存在硬盘中,持久化。②用于socket网络传输。
不管是程序源代码,还是运行程序中的变量、对象,都是010101的二进制代码。
序列化的更准确的原因是这样。
首先,为什么源代码是怎么构建出对象的?
源代码,就是持久化在硬盘中的,在程序运行的时候,首先将源代码从硬盘读入内存。
为什么这个时候就能构造对象呢?因为我们有两个东西
①程序源代码,告诉我们要构建哪些对象。
②C++这个语言,可以告诉编译器