您好,欢迎访问一九零五行业门户网

什么是java的序列化

java的序列化是将java对象转换成字节流的过程。当java对象需要在网络上传输 或者 持久化存储到文件中时,就需要对 java 对象进行序列化处理。
序列化的实现:类实现 serializable 接口,这个接口没有需要实现的方法。实现 serializable 接口是为了告诉 jvm 这个类的对象可以被序列化。        (推荐学习:java课程  )
注意事项:
某个类可以被序列化,则其子类也可以被序列化
声明为 static 和 transient 的成员变量,不能被序列化。static 成员变量是描述类级别的属性,transient 表示临时数据
反序列化读取序列化对象的顺序要保持一致
具体使用
package constxiong.interview; import java.io.fileinputstream;import java.io.fileoutputstream;import java.io.ioexception;import java.io.objectinputstream;import java.io.objectoutputstream;import java.io.serializable; /** * 测试序列化,反序列化 * @author constxiong * @date 2019-06-17 09:31:22 */public class testserializable implements serializable { private static final long serialversionuid = 5887391604554532906l; private int id; private string name; public testserializable(int id, string name) { this.id = id; this.name = name; } @override public string tostring() { return "testserializable [id=" + id + ", name=" + name + "]"; } @suppresswarnings("resource") public static void main(string[] args) throws ioexception, classnotfoundexception { //序列化 objectoutputstream oos = new objectoutputstream(new fileoutputstream("testserializable.obj")); oos.writeobject("测试序列化"); oos.writeobject(618); testserializable test = new testserializable(1, "constxiong"); oos.writeobject(test); //反序列化 objectinputstream ois = new objectinputstream(new fileinputstream("testserializable.obj")); system.out.println((string)ois.readobject()); system.out.println((integer)ois.readobject()); system.out.println((testserializable)ois.readobject()); } }
打印结果:
测试序列化618testserializable [id=1, name=constxiong]
以上就是什么是java的序列化的详细内容。
其它类似信息

推荐信息