序列化对象:
复制代码代码如下:
แพ็คเกจ com.chen.seriaizable;
นำเข้า java.io.Serializable;
นำเข้า java.util.List;
@SuppressWarnings("อนุกรม")
นักเรียนชั้นเรียนสาธารณะดำเนินการ Serializable
-
ชื่อสตริงส่วนตัว
รหัสสตริงส่วนตัว;
อายุ int ส่วนตัว
รายชื่อนักเรียน <นักเรียน> ส่วนตัว;
สตริงสาธารณะ getName()
-
ชื่อผู้ส่งคืน;
-
setName เป็นโมฆะสาธารณะ (ชื่อสตริง)
-
this.name = ชื่อ;
-
สตริงสาธารณะ getId()
-
รหัสส่งคืน;
-
โมฆะสาธารณะ setId (รหัสสตริง)
-
this.id = ไอดี;
-
สาธารณะ int getAge()
-
อายุกลับ;
-
setAge โมฆะสาธารณะ (อายุ int)
-
this.age = อายุ;
-
รายการสาธารณะ <นักเรียน> getStudents()
-
ส่งนักเรียนกลับ;
-
โมฆะสาธารณะ setStudents (รายการ <นักเรียน> นักเรียน)
-
this.students = นักเรียน;
-
@แทนที่
สตริงสาธารณะ toString()
-
StringBuffer stringBuffer = ใหม่ StringBuffer();
stringBuffer.append("id:" + this.id).append("/n");
stringBuffer.append("name:" + this.name).append("/n");
stringBuffer.append("อายุ:" + this.age).append("/n");
กลับ stringBuffer.toString();
-
-
复制代码代码如下:
แพ็คเกจ com.chen.seriaizable;
นำเข้า java.io.FileInputStream;
นำเข้า java.io.FileOutputStream;
นำเข้า java.io.IOException;
นำเข้า java.io.ObjectInputStream;
นำเข้า java.io.ObjectOutputStream;
นำเข้า java.util.ArrayList;
นำเข้า java.util.List;
SaveStudent ชั้นเรียนสาธารณะ
-
นักเรียนนักศึกษาเอกชน
// 序列化文件保存位置
เส้นทางสตริงส่วนตัว = "C:/student.Serializable";
โมฆะสาธารณะ writeStudent ()
-
รายการ <นักเรียน> นักเรียน = ใหม่ ArrayList<นักเรียน>();
นักเรียน = นักเรียนใหม่ ();
นักเรียน Student1 = นักเรียนใหม่ ();
นักเรียน1.setAge(1);
นักเรียน1.setId("1");
Student1.setName("张1");
นักเรียนเพิ่ม(นักเรียน1);
นักเรียน Student2 = นักเรียนใหม่ ();
นักเรียน2.setAge(2);
Student2.setId("2");
Student2.setName("张2");
นักเรียนเพิ่ม(student2);
นักเรียน Student3 = นักเรียนใหม่ ();
นักเรียน3.setAge(3);
Student3.setId("3");
Student3.setName("张3");
นักเรียนเพิ่ม(นักเรียน3);
นักเรียน Student4 = นักเรียนใหม่ ();
นักเรียน4.setAge(4);
Student4.setId("4");
Student4.setName("สี่");
นักเรียน Student41 = นักเรียนใหม่ ();
นักเรียน41.setAge(41);
Student41.setId("41");
Student41.setName("张41");
รายการ<นักเรียน> นักเรียน4 = ใหม่ ArrayList<นักเรียน>();
students4.add(นักเรียน41);
Student4.setStudents(นักเรียน4);
นักเรียนเพิ่ม(student4);
นักเรียน setAge (500);
Student.setId("100");
Student.setName("张A000");
Student.setStudents(นักเรียน);
พยายาม
-
ObjectOutputStream objectOutputStream = ObjectOutputStream ใหม่ (FileOutputStream ใหม่ (เส้นทาง));
objectOutputStream.writeObject (นักเรียน);
objectOutputStream.close();
-
จับ (IOException จ)
-
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
System.out.println("写完");
-
โมฆะสาธารณะ readStudent()
-
พยายาม
-
ObjectInputStream objectInputStream = ObjectInputStream ใหม่ (FileInputStream ใหม่ (เส้นทาง));
นักเรียน = (นักเรียน) objectInputStream.readObject ();
System.out.println(student.getAge());
objectInputStream.close();
-
จับ (ยกเว้น e)
-
e.printStackTrace();
-
System.out.println("读完");
-
@แทนที่
สตริงสาธารณะ toString()
-
อ่านนักเรียน();
StringBuffer stringBuffer = ใหม่ StringBuffer(100);
StudentToString(stringBuffer, นักเรียน);
กลับ stringBuffer.toString();
-
โมฆะสาธารณะ StudentToString (StringBuffer stringBuffer นักเรียน StudentObj)
-
ถ้า (นักเรียน != null)
-
stringBuffer.append("id:" + StudentObj.toString()).append("/n");
ถ้า (studentObj.getStudents() != null)
-
stringBuffer.append("/n[/n");
สำหรับ (Student bean : StudentObj.getStudents())
-
StudentToString (stringBuffer, ถั่ว);
-
stringBuffer.append("/n]/n");
-
-
-
-
测试类:
复制代码代码如下:
แพ็คเกจ com.chen.seriaizable;
การทดสอบในชั้นเรียนสาธารณะ
-
-
* @param args
-
โมฆะสาธารณะคง main (String [] args)
-
SaveStudent saveStudent = ใหม่ SaveStudent();
// 1 先执行写入文件
// saveStudent.writeStudent();
// 2 ปีที่แล้ว
System.out.println(saveStudent);
System.out.println("读完");
-
-