【发布时间】:2011-05-26 12:45:01
【问题描述】:
我有这个运行良好的代码:
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 {
.....
}
可能是因为the PersistentObject doc 说:
隐式持久性
请注意,有些类是隐式可持久化的:Boolean、Byte、Character、Integer、Long、Object、Short、String、Vector、Hashtable。
还要注意,当你持久化一个对象时,它所引用的任何可持久化对象也将被持久化。
但是其他数据结构呢?例如 - 而不是上面使用的 Vector - 我想要一个 Hashtable 与键:字符串和值:MyItems。无论该对象有多复杂,我如何才能使其成为 Persistable 并确保真正存储 MyItem 内容?
为什么IntHashtable 被列为 Persistable,而 Hashtable 却不是?
谢谢! 亚历克斯
【问题讨论】:
标签: blackberry persistence hashtable persistent-storage