Serializable 用法

本文探讨了Java中序列化的应用场景,重点介绍了serialVersionUID的作用及其如何避免序列化过程中产生的不兼容问题。通过实例展示了当类结构发生变化时,serialVersionUID如何确保序列化的一致性。

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

1.java.io.Serializable 一般用在远程传输对象、或者保存文件再读取文件过程、等用到。

2.serialVersionUID序列化id相当于给一个特殊的唯一标志。可避开一些不兼容性等问题。

如果没使用serialVersionUID, 比如今天你把一个类Serializable序列到硬盘后,第二天你把这个列中的一个字段改了,

你再Serializable的时候,就会出现Exception,还有不同电脑调用同一个类的时候,如果也没Serializable的话也可能会出现这种异常。

3.可变化下面列子User对象中的属性,再对其测试,就会发现其含义。

public Class void main(String[] args){

try{

File file=new File("file.seri");

FileOutputStream out=new FileOutStream(file);

ObjectOutputStream oout=new ObjectOutputStream(out);

User user=new User("aaaa");

oout.writeObject(user);

leInputStream in = new FileInputStream(file)

jectInputStream oin = new ObjectInputStream(in);

er user = (User)oin.readObject();

stem.out.println(user.getName());

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值