IExternalizable 接口

定义

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

[Android.Runtime.Register("java/io/Externalizable", "", "Java.IO.IExternalizableInvoker")]
public interface IExternalizable : IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/io/Externalizable", "", "Java.IO.IExternalizableInvoker")>]
type IExternalizable = interface
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
属性
实现

注解

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

Externalizable 接口的 writeExternal 和 readExternal 方法由类实现,以便类完全控制对象及其超类型的流的格式和内容。 这些方法必须与超类型显式协调才能保存其状态。 这些方法取代 writeObject 和 readObject 方法的自定义实现。<Br>

对象序列化使用可序列化和可外部化接口。 对象持久性机制也可以使用它们。 要存储的每个对象都针对 Externalizable 接口进行测试。 如果对象支持 Externalizable,则调用 writeExternal 方法。 如果对象不支持 Externalizable 并且实现了 Serializable,则使用 ObjectOutputStream 保存该对象。 <br> 重新构造 Externalizable 对象时,将使用公共 no-arg 构造函数创建实例,然后使用 readExternal 方法调用。 可通过从 ObjectInputStream 读取可序列化对象来还原这些对象。<Br>

Externalizable 实例可以通过可序列化接口中记录的 writeReplace 和 readResolve 方法指定替换对象。<Br>

在 1.1 中添加。

java.io.ExternalizableJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

属性

Handle

获取基础 Android 对象的 JNI 值。

(继承自 IJavaObject)
JniIdentityHashCode

返回包装实例的 的值 java.lang.System.identityHashCode()

(继承自 IJavaPeerable)
JniManagedPeerState

托管对等方的状态。

(继承自 IJavaPeerable)
JniPeerMembers

成员访问和调用支持。

(继承自 IJavaPeerable)
PeerReference

返回 JniObjectReference 包装的 Java 对象实例的 。

(继承自 IJavaPeerable)

方法

Disposed()

在释放实例时调用。

(继承自 IJavaPeerable)
DisposeUnlessReferenced()

如果没有对此实例的未完成引用,则调用 Dispose();否则不执行任何操作。

(继承自 IJavaPeerable)
Finalized()

在实例完成时调用。

(继承自 IJavaPeerable)
ReadExternal(IObjectInput)

对象通过对基元类型调用 DataInput 和对象、字符串和数组的 readObject 方法来实现 readExternal 方法来还原其内容。

SetJniIdentityHashCode(Int32)

设置 返回 JniIdentityHashCode的值。

(继承自 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

(继承自 IJavaPeerable)
SetPeerReference(JniObjectReference)

设置 返回 PeerReference的值。

(继承自 IJavaPeerable)
UnregisterFromRuntime()

取消注册此实例,以便运行时不会从将来 Java.Interop.JniRuntime+JniValueManager.PeekValue 的调用中返回它。

(继承自 IJavaPeerable)
WriteExternal(IObjectOutput)

对象通过为其基元值调用 DataOutput 的方法或为对象、字符串和数组调用 ObjectOutput 的 writeObject 方法,实现 writeExternal 方法来保存其内容。

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

GetJniTypeName(IJavaPeerable)

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

ReadExternalAsync(IExternalizable, IObjectInput)

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

WriteExternalAsync(IExternalizable, IObjectOutput)

序列化流中仅写入可 Externalizable 实例的 类的标识,该类负责保存和还原其实例的内容。

适用于