java – 序列化包含对象ArrayList的对象
public class User implements Serializable{ public String name; public String surname; public List<Picked> pickedBooks = new ArrayList<>(); // Code omitted. } 然后去上课: public class Picked { public Book book; public int period; public int cost; // Code omitted. } 和班级书: public class Book { public String name; public String bookTitle; public int howMany; // Code omitted. } 所以在主要的我创建新用户并序列化它: User user = new User(); user.setName("John"); user.setSurname("James"); String fileName = "data.bin"; try (ObjectOutputStream os = new ObjectOutputStream(new FileOutputStream(fileName))) { os.writeObject(user); } catch (IOException ex) { Logger.getLogger(Library.class.getName()).log(Level.SEVERE,null,ex); } 一切都很完美,但如果我这样做的话: Book book = new Book("Dan Brown","Angels and Demons",1); Picked pck = new Picked(book,20,2); user.add(pck); 然后我想序列化对象用户,程序崩溃了.
解决方法
Picked和Book还需要实现Serializable.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- java – 排序包含数字字符串的文件名数组
- java – 相同(?)对象的不同对象引用
- java.nio.file.NoSuchFileException:为什么nio没有创建文件
- 如何在Java中获得无代理连接?
- 在JavaFX 8 DatePicker中更改语言
- java – Spring XML中applicationcontext的“this”引用
- java多线程系列_使用Runnable接口创建线程(3)
- 使用下划线分隔Java中的字符串作为分隔符
- 坚持我的Java作业 – 使用StringBuilder进行Hangman游戏 –
- JBoss 5.1.0 EAP.随机生成java.lang.NoClassDefFoundError