import java.io.*;
public class GenericMethodTest {
public static void main(String[] args) {
Student stu=new Student();
stu.name="雷锋";
stu.age=100;
String fileName="e:/a.dat";
try {
toFile(stu,fileName);
} catch (IOException e) {
e.printStackTrace();
}
try {
Student stu_1=fromFile(fileName);
System.out.println(stu_1);
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
private static <T> void toFile(T t,String fileName) throws IOException{
FileOutputStream fos=new FileOutputStream(fileName);
ObjectOutputStream oos=new ObjectOutputStream(fos);
oos.writeObject(t);
oos.flush();
oos.close();
}
private static <T> T fromFile(String fileName) throws IOException, ClassNotFoundException{
FileInputStream fis=new FileInputStream(fileName);
ObjectInputStream oid=new ObjectInputStream(fis);
@SuppressWarnings("unchecked")
T t=(T)oid.readObject();
return t;
}
}
import java.io.Serializable;
@SuppressWarnings("serial")
public class Student implements Serializable {
public String name;
public int age;
@Override
public String toString(){
return name+" : "+age;
}
}