?? serializationdemo.java
字號:
//Serializable接口,關于序列化的例子
import java.io.*;
//實現Serializable接口,使得MyClass類的對象可以序列化 和 反序列化
class MyClass implements Serializable
{
String s;
int i;
double d;
public MyClass(String s,int i,double d)
{
this.s=s;
this.i=i;
this.d=d;
}
public String toString()
{
return "s=" + s + ";i=" + i + ";d=" + d;
}
}
public class SerializationDemo
{
public static void main(String args[])
{
//對象序列化 :序列化是把一個對象的狀態寫入一個字節流的過程
try
{
MyClass object1=new MyClass("Hello",-7,2.7e10);
System.out.println("object1:"+object1.toString());
FileOutputStream fos=new FileOutputStream("serial.txt");
ObjectOutputStream oos=new ObjectOutputStream(fos);
oos.writeObject(object1); //往文件中寫入對象
oos.flush();
oos.close();
}
catch(Exception e)
{
System.out.println("Exception during serialization:"+e);
System.exit(0);
}
//對象反序列化
try
{
MyClass object2;
FileInputStream fis=new FileInputStream("serial.txt");
ObjectInputStream ois=new ObjectInputStream(fis);
object2=(MyClass)ois.readObject(); //從文件中讀取,從字節流返回MyClass對象的狀態
ois.close();
System.out.println("object2:"+object2.toString());
}
catch(Exception e)
{
System.out.println("Exception during deserialization:"+e);
System.exit(0);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -