Serialize 是什么?

本文介绍了Java中对象序列化的概念及其实现方式。通过java.io.ObjectOutputStream类可以将对象转化为0、1序列,以便于存储或传输。对于不想序列化的属性,可以使用transient关键字进行标记。

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

这是IO存储中的一个概念。计算机中所有的内容都是0或者1的数字。这些数字按顺序排列,便可以表示计算机中的万事万物,当然Java的对象也不例外。在内存中,无论如何表示,对我们的操作都没有影响,所以我们不必关心。但是,当我们需要把对象存储到硬盘、数据库或其它相关介质时,我们就需要考虑这个表示格式或者转化方法。
Java的对象要如何转化为这0、1的序列呢?就是靠序列化,使用java.io.ObjectOutputStream类即可完成复杂的转化工作,但ObjectOutputStream类可以支持的只有实现了Serializable接口的对象,如果没有实现Serializable接口,则会抛出NotSerializableException。你希望序列化的类中,常常可能参杂了一些临时性成员变量或者一些你并不希望它们被存储下来的属性,这些成员变量或者属性,就需要用transient关键字修饰。它们会在序列化时被忽略。当从存储介质中读取并还原成对象时,他们会被还原为属性的默认值(基本类型为0或false,对象为null)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值