我有一个自定义类,使用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保密并将其正确序列化的正确方法是什么?