我有这个运行良好的代码:
static {
myStore = PersistentStore.getPersistentObject(MY_LONG_KEY);
myList = (Vector) myStore.getContents();
if (_storedStations == null) {
myList = new Vector(4);
// prepopulate with fake data
myList.addElement(new MyItem("Eins"));
myList.addElement(new MyItem("Zwei"));
myList.addElement(new MyItem("Drei"));
myList.addElement(new MyItem("Vier"));
myStore.setContents(myList);
}
}
class MyItem implements Persistable {
.....
}
可能是因为PersistentObject 文档说:
隐式持久性
请注意,某些类是隐式可持久的:Boolean、Byte、Character、Integer、Long、Object、Short、String、Vector、Hashtable。
另请注意,当您持久化一个对象时,它所引用的任何可持久化对象也将被持久化。
但是其他数据结构呢?例如 - 而不是上面使用的向量 - 我想要一个带有键的哈希表:字符串和值:MyItems。无论该对象有多复杂,我如何才能使其成为 Persistable 并确保真正存储 MyItem 内容?
为什么IntHashtable被列为 Persistable,而 Hashtable 却不是?
谢谢!亚历克斯