FileOutputStream fos = new FileOutputStream("persion.obj");
ObjectOutputStream oos= new ObjectOutputStream(fos);
List<String> list = new ArrayList<String>();
list.add("name1");
list.add("name2");
list.add("name3");
Person person = new Person("name1", 20, 1, list);
oos.writeObject(person);
oos.close();
fos.close();
FileInputStream fis = new FileInputStream("persion.obj");
ObjectInputStream ois = new ObjectInputStream(fis);
Person p = (Person) ois.readObject();
// equal
System.out.println(p.equals(person));
// ==
System.out.println(p == person);
// out
System.out.println(p);
ois.close();
fis.close();
/**
* 用於測試序列化的類
* @author Heying
*
*/
public class Person implements Serializable {
private String name;
private int age;
private int sex;
private transient List<String> other;
public Person(String name, int age, int sex, List<String> other) {
super();
this.name = name;
this.age = age;
this.sex = sex;
this.other = other;
}
@Override
public String toString() {
return "name="+name+"age="+age+"sex="+sex+"other="+other;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Person other = (Person) obj;
if (age != other.age)
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (this.other == null) {
if (other.other != null)
return false;
} else if (!this.other.equals(other.other))
return false;
if (sex != other.sex)
return false;
return true;
}
}
持久化操作(寫入文件)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.