博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java基础----序列化问题
阅读量:2186 次
发布时间:2019-05-02

本文共 1910 字,大约阅读时间需要 6 分钟。

package com.cug.datastream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;/* * 序列化流:把对象按照流一样的方式存入文本文件或者在网络中传输。对象 -- 流数据(ObjectOutputStream) * 反序列化流:把文本文件中的流对象数据或者网络中的流对象数据还原成对象。流数据 -- 对象(ObjectInputStream) */public class ObjectInputStreamDemo {	public static void main(String[] args) throws IOException, ClassNotFoundException {//		write();		read();			}		private static void write() throws IOException{		ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("obj.txt"));		Person p = new Person("zhu",21);		oos.writeObject(p);		oos.close();	}		private static void read() throws IOException, ClassNotFoundException{		ObjectInputStream ois = new ObjectInputStream(new FileInputStream("obj.txt"));		Object obj = ois.readObject();		ois.close();		System.out.println(obj);	}}
package com.cug.datastream;import java.io.Serializable;/* * 类通过实现 java.io.Serializable 接口以启用其序列化功能。未实现此接口的类将无法使其任何状态序列化或反序列化。 * 该接口居然没有任何方法,类似于这种没有方法的接口被称为标记接口。 */public class Person implements Serializable{	/*	 * Exception in thread "main" java.io.InvalidClassException: 	 * com.cug.datastream.Person; local class incompatible: 	 * stream classdesc serialVersionUID = 6071311591162915649, 	 * local class serialVersionUID = 1971608717899087914	 */	//加上此句话是为了防止上述错误	private static final long serialVersionUID = 6071311591162915649L;	private String name;	int age;//	private transient int age; //transient关键字表示该成员变量不进行序列化	public Person() {		super();	}	public Person(String name, int age) {		super();		this.name = name;		this.age = 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 "Person [name=" + name + ", age=" + age + "]";	}		}

转载地址:http://cmhkb.baihongyu.com/

你可能感兴趣的文章
剑指offer 23.从上往下打印二叉树
查看>>
剑指offer 25.二叉树中和为某一值的路径
查看>>
剑指offer 60. 不用加减乘除做加法
查看>>
Leetcode C++《热题 Hot 100-14》283.移动零
查看>>
Leetcode C++《热题 Hot 100-15》437.路径总和III
查看>>
Leetcode C++《热题 Hot 100-17》461.汉明距离
查看>>
Leetcode C++《热题 Hot 100-18》538.把二叉搜索树转换为累加树
查看>>
Leetcode C++《热题 Hot 100-21》581.最短无序连续子数组
查看>>
Leetcode C++《热题 Hot 100-22》2.两数相加
查看>>
Leetcode C++《热题 Hot 100-23》3.无重复字符的最长子串
查看>>
Leetcode C++《热题 Hot 100-24》5.最长回文子串
查看>>
Leetcode C++《热题 Hot 100-28》19.删除链表的倒数第N个节点
查看>>
Leetcode C++《热题 Hot 100-29》22.括号生成
查看>>
Leetcode C++《热题 Hot 100-47》236.二叉树的最近公共祖先
查看>>
Leetcode C++《热题 Hot 100-48》406.根据身高重建队列
查看>>
《kubernetes权威指南·第四版》第二章:kubernetes安装配置指南
查看>>
Leetcode C++《热题 Hot 100-49》399.除法求值
查看>>
Leetcode C++《热题 Hot 100-51》152. 乘积最大子序列
查看>>
Leetcode C++ 《第181场周赛-1》 5364. 按既定顺序创建目标数组
查看>>
Leetcode C++ 《第181场周赛-2》 1390. 四因数
查看>>