news 2026/4/25 10:50:15

java基础-IO流(序列化流和反序列流)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
java基础-IO流(序列化流和反序列流)

序列化流/对象操作输出流:可以把JAVA中的对象写到本地文件中

使用对象输出流将对象保存到文件的时候,会出现NotSerializableException异常

解决方案:让JAVAbean类实现Serializable接口

1、Serializable接口里面没有抽象方法,是一个标记接口 2、一旦实现了这个接口,就表示当前的这个Student类可以被序列化

反序列号流:

序列化流和反序列化流,

细节一:如果使用反序列化流在解析数据的时候,JAVAbean类是不能修改的,一旦修改就会导致两边的标识不一样。

解决方法如下:

方案一:

在javabean类中写死

方案二:设置IDEA

设置IDEA之后,如果不记得写,IDEA会有一个深色背景在类名的背后,你可以自己写一个

也可以alt+回车,IDEA会提示你写

细节二:

如果javabean中有一些属性,你不想序列化,比如student类中,有name,age,address,你不想序列化address,这个时候可以添加关键字

transient:瞬态关键字

需求:将多个自定义对象序列化到文件中,但是对象的个数不确定,该如何操作的?

package Day11_IO; import java.io.*; import java.util.ArrayList; public class IOTest02 { public static void main(String[] args) throws IOException, ClassNotFoundException { //利用集合存储对象,可以实现批量序列化和反序列化 Animals a1 = new Animals("哈士奇",10); Animals a2 = new Animals("波斯猫",11); Animals a3 = new Animals("米老鼠",12); Animals[] arr =new Animals[3]; ArrayList<Animals> list = new ArrayList<Animals>(); list.add(a1); list.add(a2); list.add(a3); //序列号写入 ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("E:\\file\\test1.txt")); oos.writeObject(list); oos.close(); //序列号读取 ObjectInputStream ois = new ObjectInputStream(new FileInputStream("E:\\file\\test1.txt")); ArrayList<Animals> list1=(ArrayList<Animals>) ois.readObject(); for (Animals animals : list1) { System.out.println(animals); } ois.close(); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 0:13:27

《Python 正则表达式完全指南:从入门到精通》(AI版)

一、引言 正则表达式(Regular Expression,简称 regex 或 regexp)是一种用于匹配字符串中字符组合的模式。在文本处理、数据清洗、网络爬虫、日志分析等领域,正则表达式都是不可或缺的利器。 Python 通过内置的 re 模块提供了对正则表达式的支持,同时也有第三方库如 regex…

作者头像 李华
网站建设 2026/4/23 17:11:56

360度VR全景设备技术测评与行业应用分析

1、三维空间数据采集的技术分野当前&#xff0c;360度VR全景设备已分化为多条清晰的技术路径&#xff0c;其差异远不止于分辨率高低&#xff0c;更在于核心工作原理、最终数据形态及适用的工程化场景。从基于AI的视觉重建&#xff0c;到依赖主动测距的精密扫描&#xff0c;不同…

作者头像 李华
网站建设 2026/4/23 10:49:51

偷懒也高效:帮你准备好的提示词复制范本(附场景)

很多人嘴上说着要“好好用 AI 提升效率”&#xff0c; 实际操作却是这样的&#xff1a;每次打开对话框&#xff0c;现场现编问题&#xff1b;想说清楚需求&#xff0c;结果越解释越乱&#xff1b;问到第三轮&#xff0c;自己都忘了最初想要什么。最后得出一个结论&#xff1a; …

作者头像 李华
网站建设 2026/4/23 10:45:21

ServiceNow预测阿联酋将在2030年新增超百万AI驱动岗位

ServiceNow预测&#xff0c;随着人工智能和数字技术在经济各领域的深度融合&#xff0c;阿联酋到2030年将新增超过103万个就业岗位&#xff0c;这凸显了该国将自身定位为全球AI中心的宏大雄心。这一预测正值公私部门持续投资AI驱动转型之际&#xff0c;相关举措包括《阿联酋203…

作者头像 李华