Главная / Action Script 3
Пакетflash.net
Классpublic final class ObjectEncoding
НаследованиеObjectEncoding Inheritance Object

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Класс ObjectEncoding позволяет классам, сериализующим объекты (например, NetStream, NetConnection, SharedObject и ByteArray), работать с предыдущими версиями ActionScript.

Кодировка объектов управляет представлением этих объектов в формате Action Message Format (AMF). С помощью AMF проигрыватель Flash Player обеспечивает эффективное взаимодействие между приложением и удаленным сервером. AMF кодирует удаленные вызовы процедуры в компактное двоичное представление, которое может быть передано по протоколу HTTP/HTTPS или RTMP/RTMPS, используемому сервером Flash Media Server. Объекты ActionScript и значения данных сериализуются в этот двоичный формат, который в большинстве случаев обеспечивает более компактное представление данных, чем например язык XML.

Проигрыватель Flash Player 9 осуществляет сериализацию в двух различных форматах: AMF3 и AMF0. AMF3, используемая по умолчанию сериализация для ActionScript 3.0, обладает целым рядом преимуществ по сравнению с AMF0, которая используется для ActionScript 1.0 и 2.0. AMF3 отправляет данные по сети намного эффективнее, чем AMF0. Формат AMF3 поддерживает отправку объектов int и uint как целые числа, а также поддерживает типы данных, доступные только в ActionScript 3.0 (такие как ByteArray, XML и IExternalizable). Это доступно только в ActionScript 3.0 и на серверах, использующих кодировку AMF3, таких как Flex 2.

Классы ByteArray, NetConnection, NetStream, SharedObject, Socket и URLStream содержат свойство objectEncoding, которому присваивается константа из класса ObjectEncoding. Характеристики свойства objectEncoding зависят от самого объекта. В описании свойства objectEncoding для каждого класса даны более подробные сведения по этому вопросу.



Общедоступные свойства
 СвойствоОпределено
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  dynamicPropertyWriter : IDynamicPropertyWriter
[статические] Обеспечивает более строгий контроль за сериализацией динамических свойств динамических объектов.
ObjectEncoding
 Inheritedprototype : Object
[статические] Ссылка на модель объекта класса или функции.
Object
Общедоступные методы
 МетодОпределено
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление заданного объекта.
Object
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Общедоступные константы
 Константа Определено
  AMF0 : uint = 0
[статические] Указывает, что объекты сериализуются с помощью формата AMF для ActionScript 1.0 и 2.0.
ObjectEncoding
  AMF3 : uint = 3
[статические] Указывает, что объекты сериализуются с помощью формата AMF для ActionScript 3.0.
ObjectEncoding
  DEFAULT : uint = 3
[статические] Указывает формат по умолчанию (последний) для текущего проигрывателя.
ObjectEncoding
Сведения о свойстве
dynamicPropertyWriterсвойство
dynamicPropertyWriter:IDynamicPropertyWriter  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

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

Данное значение вызывается только для свойств динамического объекта (объект, объявленный в рамках динамического класса) или для объектов, объявленных с помощью оператора new.

Данное свойство можно использовать, чтобы исключить сериализацию свойств динамических объектов, а также чтобы записать значения в свойства динамических объектов или создать для этих объектов новые свойства. Для этого установите данное свойство тому объекту, который реализует интерфейс IDynamicPropertyWriter. Дополнительную информацию см. в интерфейсе IDynamicPropertyWriter.



Реализация
    public static function get dynamicPropertyWriter():IDynamicPropertyWriter
    public function set dynamicPropertyWriter(value:IDynamicPropertyWriter):void

См. также

Сведения о константе
AMF0Константа
public static const AMF0:uint = 0

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Указывает, что объекты сериализуются с помощью формата AMF для ActionScript 1.0 и 2.0.

AMF3Константа  
public static const AMF3:uint = 3

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Указывает, что объекты сериализуются с помощью формата AMF для ActionScript 3.0.

DEFAULTКонстанта  
public static const DEFAULT:uint = 3

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Указывает формат по умолчанию (последний) для текущего проигрывателя. Поскольку управление кодировкой объекта доступно только в проигрывателе Flash® Player 9 и более поздних версиях, самым ранним применяемым форматом будет считаться Action Message Format for ActionScript 3.0.

Например, если объект имеет свойство objectEncoding со значением flash.net.ObjectEncoding.DEFAULT, то проигрыватель Flash Player использует кодировку AMF3. Если в будущем, в более поздней версии Flash Player будет представлена новая версия AMF и вы заново опубликуете свое содержимое, проигрыватель будет использовать именно эту новую версию AMF. Эту константу можно применять только в том случае, если вас совсем не интересует возможность взаимодействия с предыдущими версиями проигрывателя Flash Player.