Глубокая обобщенная сериализация объектов ActionScript - PullRequest
2 голосов
/ 25 января 2011

Есть ли способ, без создания создателем объекта каких-либо специальных функций (без специальных функций сериализации) (однако они могут использовать аннотации), чтобы Flash сериализовал общий, возможно глубокий (объекты внутри объектов внутри объектов,и т. д. и т. д.) объект?

Если это не имеет смысла, прокомментируйте как таковой, и я постараюсь уточнить.

Ответы [ 2 ]

2 голосов
/ 25 января 2011

AMF может использоваться для сериализации сложных объектов.Вот хорошая информация:

http://tournasdimitrios1.wordpress.com/2010/07/23/the-abcs-of-amf-format/

1 голос
/ 25 января 2011

Существует универсальный способ клонирования объекта - однако не глубокая копия:

public function clone():MyObject
{
  var byteArr:ByteArray = new ByteArray();
  byteArr.writeObject(this);
  byteArr.position = 0;
  return(byteArr.readObject());
}

В любом случае настоящая глубокая копия иногда не очень полезна, так как часто будет определенный уровень, на котором вы захотите остановиться. В общем, я рекомендую создать интерфейс ICloneable, который определяет метод клонирования. Реализуйте этот объект для всех объектов, которые вы хотите клонировать, и рекурсивно вызывайте его для всех экземпляров, которые реализуют этот интерфейс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...