オブジェクトを .dat ファイルに書き込もうとしてアプリケーション ファイルを実行しているときに、NotSerializableException が発生します。
try{
Person[] personList = new Person[3];
personList[0] = new TeamLeader(8, "Mike Johnson", 29);
personList[1] = new Engineer(0.4,"Russell Sanders", 22);
personList[2] = new Engineer(0.7, "Steven Peterson", 25);
out = new ObjectOutputStream(new FileOutputStream("persons.dat"));
for(int i = 0; i < personList.length; i++) {
out.writeObject(personList[i]);//error line 85
}
//out.writeObject(personList);
}
catch(IOException e) {
System.out.println("Problem writing file");
e.printStackTrace();
}
エラー
java.io.NotSerializableException: TeamLeader
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java: 346)
at CharlieBrownP6.main(CharlieBrownP6.java: 85)
エラーは同じエラーのために中止された書き込みについてに続きます