java之Serializable序列化与反序列化

当大家学习到IO ObjectIn/OutputStream 流时会遇到序列化和反序列化
1.什么是序列化?
2.序列化它的作用
3.序列化的常用方法
1.序列化是将内存的数据分成若干份储存到硬盘上
2.它可以防止用户机宕机导致内存中的数据丢失
常用用法
1.只要将Serializable接口实现 ,系统自动分配序列化号

import java.io.Serializable;//该接口是可序列化的
  							//该接口没有任何方法,是一个标识接口。
							//像这样的接口还有1.java.lang.Cloneable;可克隆的
/*
 * 标志接口的作用,起到标识的作用
 * 当JVM虚拟机看到这个对象的时候实现了某个标识接口,会对他特殊待遇
 * 
 */

在这里插入图片描述
缺点:每次想要重新编译这个文件的时候就必须将原本的文件和调用它的文件删除,因为每一次编译的时候系统就会自动分配一个序列号,简单说就是文件在分割的时候已经按它原本的顺序被分割好并且贴上了便签。如果你想改变原本的就必须重新掀开包装,或者重新写一个。
2.自定义序列化
在这里插入图片描述
这样每次在修改序列化文件的时候只需要将它原本生成的class文件删掉重新编译就可以了,不再需要将其他调用文件的class文件删掉。

3.额外的transient(暂时的)关键字
在这里插入图片描述
图片中写出如果我们不想一个属性序列化,并且不想被反序列化调用就可以用transient将该属性暂时的屏蔽。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT_Octopus

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值