ObjectInputStream.ReadUnshared Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Считывает объект unshared из ObjectInputStream.
[Android.Runtime.Register("readUnshared", "()Ljava/lang/Object;", "GetReadUnsharedHandler")]
public virtual Java.Lang.Object? ReadUnshared();
[<Android.Runtime.Register("readUnshared", "()Ljava/lang/Object;", "GetReadUnsharedHandler")>]
abstract member ReadUnshared : unit -> Java.Lang.Object
override this.ReadUnshared : unit -> Java.Lang.Object
Возвращаемое значение
ссылка на десериализированный объект
- Атрибуты
Исключения
Значение , если класс одного из объектов в графе объектов не найден.
Если при чтении из исходного потока возникает ошибка.
Комментарии
Считывает объект unshared из ObjectInputStream. Этот метод идентичен readObject, за исключением того, что он запрещает последующим вызовам readObject и readUnshared возвращать дополнительные ссылки на десериализированный экземпляр, полученный с помощью этого вызова. В частности: ul><li>, <если readUnshared вызывается для десериализации обратной ссылки (поток представления объекта, написанного ранее в поток), создается объект ObjectStreamException.
<li>Если readUnshared успешно возвращается, то любые последующие попытки десериализации обратных ссылок на десериализацию десериализации десериализированы с помощью readUnshared приведет к возникновению ошибки ObjectStreamException. </ul> Десериализация объекта с помощью readUnshared делает недопустимым дескриптор потока, связанный с возвращаемым объектом. Обратите внимание, что это не всегда гарантирует, что ссылка, возвращаемая readUnshared, является уникальной; Десериализованный объект может определить метод readResolve, который возвращает объект, видимый другим сторонам, или readUnshared может возвращать объект Class или константу перечисления, доступную в другом месте потока или через внешние средства. Если десериализированный объект определяет метод readResolve и вызов этого метода возвращает массив, то readUnshared возвращает неглубокий клон этого массива; Это гарантирует, что возвращаемый объект массива является уникальным и не может быть получен второй раз при вызове readObject или readUnshared в ObjectInputStream, даже если базовый поток данных был манипулирован.
Подклассы ObjectInputStream, переопределяющие этот метод, могут создаваться только в контекстах безопасности, имеющих параметр SerializablePermission "enableSubclassImplementation" SerializablePermission; любая попытка создать экземпляр такого подкласса без этого разрешения приведет к возникновению ошибки SecurityException.
Добавлено в версии 1.4.
Java документации по java.io.ObjectInputStream.readUnshared().
Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".