如何实现类对象的序列化/反序列化
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"如何实现类对象的序列化/反序列化",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何实现类对象的序列化/反序列化"吧!序列化与反序列化处理
千家信息网最后更新 2026年11月02日如何实现类对象的序列化/反序列化
本篇内容主要讲解"如何实现类对象的序列化/反序列化",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何实现类对象的序列化/反序列化"吧!
序列化与反序列化处理
有了序列化的支持类后,如果想要实现序列化和反序列化操作则可以利用以下两个类完成。
序列化:ObjectOutputStream:
类定义:public class ObjectOutputStream extends OutputStream implements ObjectOutput, ObjectStreamConstants构造方法: public ObjectOutputStream(OutputStream out) throws IOException操作方法: public final void writeObject(Object obj) throws IOException
反序列化:ObjectInputStream:
类定义:public class ObjectInputStream extends InputStream implements ObjectInput,ObjectStreamConstants构造方法: public ObjectInputStream(InputStream in) throws IOException操作方法: public final Object readObject() throws IOException, ClassNotFoundException
范例:实现序列化与反序列化
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;@SuppressWarnings("serial")class Person implements Serializable {//Person类可以被序列化private String name;private int age;public Person(String name, int age) {this.name = name;this.age = age; } @Overridepublic String toString() {return "姓名:" + this.name + "、年龄:" + this.age; }}public class JavaAPIDemo {private static final File SAVE_FILE=new File("D:" + File.separator + "mldn.person");public static void main(String[] args) throws Exception {//saveObject(new Person("小喷嚏",78));System.out.println(loadObject()); }public static void saveObject(Object obj)throws Exception{ ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream(SAVE_FILE)); oos.writeObject(obj); //序列化oos.close(); }public static Object loadObject()throws Exception{ ObjectInputStream ois=new ObjectInputStream(new FileInputStream(SAVE_FILE)); Object obj= ois.readObject(); //反序列化ois.close();return obj; }}在Java中的对象序列化与反序列化必须使用内部提供的对象操作流,因为这里面牵扯到了二进制数据的格式,所以不能自定义处理,另外如果要想实现一组对象的序列化,则可以使用对象数组完成。
在很多的实际项目开发过程之中,开发者很少能见到ObjectOutputStream、ObjectInputStream类的直接操作,因为会有一些容器帮助开发者自动实现。
到此,相信大家对"如何实现类对象的序列化/反序列化"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
序列
对象
方法
开发
内容
实际
开发者
处理
学习
实用
更深
两个
之中
二进制
兴趣
喷嚏
姓名
实用性
容器
年龄
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网高科技
互联网加科技
科技和互联网公司
河南真二互联网科技有限公司
金融科技与互联网金融
互联网科技ppt模板
睿民互联网科技
广州恒生互联网科技有限
昭通互联网科技选哪家
青岛科技大学互联网大赛研究生
开一家科技互联网公司需要多少钱
乌鲁木齐新华智原互联网科技学校
深圳市罗太互联网科技有限公司
互联网科技的全部知识
伍佰万互联网科技怎么赚钱
郑州欣桑互联网科技有限公司
2021世界互联网领先科技成果发布
广州燕处互联网科技有限公司
保山浩联互联网科技有限公司
安徽九吞吴互联网科技有限公司
深圳互联网科技公司
嘟嘟瓜互联网科技
朗涯互联网科技
互联网科技股有哪些
互联网科技类展会
太原新华互联网科技学校怎么样
科技赋能互联网健康
语蝶互联网科技有限公司
上海京穆互联网科技有限公司
互联网公司属于科技吗