我有一个自定义类,在使用 registerClassAlias 后,我一直没有问题地保存到本地 SharedObject。
registerClassAlias("MyClass",MyClass);
MyClass 的变量都是私有的,我读到私有变量不会被序列化,除非它们使用显式的 setter 和 getter,幸运的是 MyClass 用于所有私有变量。现在我想向 MyClass 添加另一个私有变量 - 一个通用对象:
private var myObject:Object = new Object();
问题是如果我想做类似的事情,我不能在 myObject 中使用显式的 setter 和 getter:
myObject["day"] = "Monday";
并且因为私有变量 myObject 不使用 setter 和 getter,所以当加载 MyClass 时,myObject 中的任何内容都无法检索。事实证明,最简单的解决方法是使 myObject 公开而不是私有,并且一切正常。但我想知道保持 myObject 私有并正确序列化的正确方法是什么?