ObjectInputStream.ReadUnshared Metode

Definisi

Membaca objek "tidak dibagikan" dari 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

Mengembalikan

referensi ke objek yang dideserialisasi

Atribut

Pengecualian

jika kelas salah satu objek dalam grafik objek tidak dapat ditemukan.

jika terjadi kesalahan saat membaca dari aliran sumber.

Keterangan

Membaca objek "tidak dibagikan" dari ObjectInputStream. Metode ini identik dengan readObject, kecuali mencegah panggilan berikutnya ke readObject dan readUnshared mengembalikan referensi tambahan ke instans yang dideserialisasi yang diperoleh melalui panggilan ini. Secara khusus: <ul><li>Jika readUnshared dipanggil untuk mendeserialisasi referensi belakang (representasi aliran objek yang telah ditulis sebelumnya ke aliran), ObjectStreamException akan dilemparkan.

<li>Jika readUnshared berhasil dikembalikan, maka setiap upaya berikutnya untuk mendeserialisasi referensi kembali ke handel aliran yang dideserialisasi oleh readUnshared akan menyebabkan ObjectStreamException dilemparkan. </ul> Deserializing objek melalui readUnshared membatalkan handel aliran yang terkait dengan objek yang dikembalikan. Perhatikan bahwa ini sendiri tidak selalu menjamin bahwa referensi yang dikembalikan oleh readUnshared unik; objek yang dideserialisasi dapat menentukan metode readResolve yang mengembalikan objek yang terlihat oleh pihak lain, atau readUnshared dapat mengembalikan objek Kelas atau enum konstanta yang dapat diperoleh di tempat lain di aliran atau melalui cara eksternal. Jika objek yang dideserialisasi mendefinisikan metode readResolve dan pemanggilan metode tersebut mengembalikan array, maka readUnshared mengembalikan kloning dangkal dari array tersebut; ini menjamin bahwa objek array yang dikembalikan unik dan tidak dapat diperoleh untuk kedua kalinya dari pemanggilan readObject atau readUnshared pada ObjectInputStream, bahkan jika aliran data yang mendasar telah dimanipulasi.

Subkelas ObjectInputStream yang mengambil alih metode ini hanya dapat dibangun dalam konteks keamanan yang memiliki "enableSubclassImplementation" SerializablePermission; setiap upaya untuk membuat instans subkelas seperti itu tanpa izin ini akan menyebabkan SecurityException dilemparkan.

Ditambahkan dalam 1.4.

Java dokumentasi untuk java.io.ObjectInputStream.readUnshared().

Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.

Berlaku untuk

Lihat juga