再谈序列化

本文深入解析序列化的定义与作用,探讨其在数据传输与存储中的重要性,并详细介绍了JDK序列化机制,包括生成的二进制文件格式及与Java虚拟机的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

序列化是将内存中的对象,通过某种可存储的形式进行表示,然后进行传输或存储。我们知道,计算机中底层只是0或1二进制形式,也就是ASCII码。而内存中的对象确实一种复杂的对象,所以就需要一种可以描述对象的机制,这种机制就是序列化协议。

常用的有以下几种序列化协议:

在这里插入图片描述

JDK序列化

jdk序列化会生成二进制文件类似于class文件,(Java中的calss文件是16进制文件)是经过编译器预处理过的一种文件,是Java的执行文件存在形式,它本身是二进制文件,但是不可以被系统直接执行,而是需要虚拟机解释执行。
所以打开之后并不是我们说的二进制0或1。如果是0或1了,那就不需要JVM进行解释执行了,所以我们常说java是半编译半解释型的语言。

jdk序列化生成的java规范的二进制文件打开如下(16进制):
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值