弄上自己以前写的序列化代码吧!!!!
有病了还这么拼!!!!!!!!!
- package cn.io.qita;
- import java.util.*;
- import java.io.*;
- /*
- 对象序列化:
- 对象序列化就是给对象一个序列号,这个序列化是根据类的字段和方法所给出的号码
- 可以通过static final long serialVersionUID = 42L;固定序列的号码
- 静态的字段不能被序列化:因为静态在方法区里面,而序列化是给堆里面的序列化
- 如果字段既不是静态,还不想被序列化那么可以在字段前面加transient
- 对象反序列化:
- 反序列化和必需和序列化用的一样的对应方法。
- */
- class Person implements Serializable //必需继承序列化
- {
- //对象序列化其实就是给对象个序列化 下面这样
- //static final long serialVersionUID = 42L;
- String name;
- int age;
- Person(String name,int age)
- {
- this.name=name;
- this.age=age;
- }
- public String toString()
- {
- return name+";;;;"+age;
- }
- }
- public class XuLieHuaDemo
- {
- public static void main(String[]args)throws Exception
- {
- //writeObject();
- readObject();
- }
- public static void readObject()throws Exception //对象反序列化
- {
- ObjectInputStream ois=new ObjectInputStream(new FileInputStream("obj.txt"));
- Person p=(Person)ois.readObject(); //返回的是对象
- System.out.println(p);
- ois.close();
-
- }
- public static void writeObject()throws IOException //对象序列化,
- {
- ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("obj.txt"));
- oos.writeObject(new Person ("aaa",23));
- oos.close();
- }
- }
复制代码 |