您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

java的序列化是什么

2026/2/4 23:30:13发布23次查看
序列化:指堆内存中的java对象数据,通过某种方式把对存储到磁盘文件中,或者传递给其他网络节点(网络传输)。这个过程称为序列化,通常是指将数据结构或对象转化成二进制的过程。                (推荐学习:java课程)
即将对象转化为二进制,用于保存,或者网络传输。    
序列化的作用
① 想把内存中的对象保存到一个文件中或者数据库中时候;
② 想用套接字在网络上传送对象的时候;
③ 想通过rmi传输对象的时候
一些应用场景,涉及到将对象转化成二进制,序列化保证了能够成功读取到保存的对象。
java的序列化实现
要实现对象的序列化,最直接的操作就是实现serializable接口
使用io流中的对象流可以实现序列化操作,将对象保存到文件,再读取出来。
首先创建一个对象,并实现serializable接口:
import java.io.serializable;public class user implements serializable{ private static final long serialversionuid = 1l; private string name; private int age; public string getname() { return name; } public void setname(string name) { this.name = name; } public int getage() { return age; } public void setage(int age) { this.age = age; } @override public string tostring() { return "user [name=" + name + ", age=" + age + "]"; }}
用对象流写一个保存对象与读取对象的工具类:
import java.io.fileinputstream;import java.io.fileoutputstream;import java.io.objectinputstream;import java.io.objectoutputstream;public class serializeutil { // 保存对象,序列化 public static void saveobject(object object) throws exception { objectoutputstream out = null; fileoutputstream fout = null; try { fout = new fileoutputstream("d:/1.txt"); out = new objectoutputstream(fout); out.writeobject(object); } finally { fout.close(); out.close(); } } // 读取对象,反序列化 public static object readobject() throws exception { objectinputstream in = null; fileinputstream fin = null; try { fin = new fileinputstream("d:/1.txt"); in = new objectinputstream(fin); object object = in.readobject(); return object; } finally { fin.close(); in.close(); } }}
测试:
public class main { public static void main(string[] args) { user user = new user(); user.setname("旭旭宝宝"); user.setage(33); // 保存 try { serializeutil.saveobject(user); } catch (exception e) { system.out.println("保存时异常:" + e.getmessage()); } // 读取 user userobject; try { userobject = (user) serializeutil.readobject(); system.out.println(userobject); } catch (exception e) { system.out.println("读取时异常:" + e.getmessage()); } }}
测试结果:
以上就是java的序列化是什么的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product