⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serializabledemo.java

📁 java入门经典教程 java入门经典教程 java入门经典教程
💻 JAVA
字号:
 // 例5.5.1 SerializableDemo.java
    import java.io.*;
public class Student implements Serializable //实现了Serializable接口
{
	long id; //学号
	String name; //姓名
	int age; //年龄
	String department; //系别
	public Student(long id,String name,int age,String department)
	{
		this.id = id;
		this.name = name;
		this.age = age;
		this.department = department;
	}
	public String toString()
	{
		return "[学号] "+id+"[姓名] "
+name+"[年龄] "+age+"[院系] "+department;
	}
}
import java.io.*;
public class SerializableDemo
{
	public static void main(String[] args) 
throws IOException,ClassNotFoundException
	{
		Student stu1,stu2;  // 创建两个Student类的对象
		stu1 = new Student(20040902,"David",18,"CSD");
		stu2 = new Student(20041005,"Lisa",19,"CSD");
        // 显示在没有序列化之前的状态
		System.out.println("Status before Object is serialized");
		System.out.println(stu1);
		System.out.println(stu2);
        
// 创建文件输出流,保存对象的状态
		FileOutputStream fOut = new FileOutputStream("data.dat");
        // 创建对象输出流,和文件输出流相连
		ObjectOutputStream out = new ObjectOutputStream(fOut);
		System.out.println("Object is serialized and saved to file....");
        // 将对象写入到输出流中保存
		out.writeObject(stu1);
		out.writeObject(stu2);
		out.close();

		Student newStu1,newStu2;
// 创建文件输入流
		FileInputStream fIn = new FileInputStream("data.dat");
        // 创建对象输入流,和文件输入流相连
		ObjectInputStream in = new ObjectInputStream(fIn);
        // 从输入流中一个一个地读取对象
		newStu1 = (Student)in.readObject();
		newStu2 = (Student)in.readObject();
		in.close();
		System.out.println("Object is recovered from file");
		System.out.println(stu1);
		System.out.println(stu2);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -