0

registerClassAlias を使用した後、問題なくローカルの SharedObject に保存したカスタム クラスがあります。

registerClassAlias("MyClass",MyClass);

MyClass の変数はすべてプライベートであり、幸いにも MyClass がすべてのプライベート変数に使用する明示的なセッターとゲッターを使用しない限り、プライベート変数はシリアル化されないことを読みました。ここで、別のプライベート変数を MyClass に追加したいと思います - 汎用オブジェクト:

private var myObject:Object = new Object();

問題は、次のようなことをしたい場合、myObject で明示的なセッターとゲッターを使用できないことです。

myObject["day"] = "Monday";

また、プライベート変数 myObject はセッターとゲッターを使用しないため、MyClass がロードされたときに myObject 内の何も取得できません。最も簡単な修正は、myObject をプライベートではなくパブリックにすることであり、すべてが機能することがわかりました。しかし、myObject をプライベートに保ち、適切にシリアル化する正しい方法は何でしょうか?

4

1 に答える 1