Share via


IExternalizable 인터페이스

정의

Externalizable instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

[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 instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

Externalizable 인터페이스의 writeExternal 및 readExternal 메서드는 클래스에 의해 구현되어 클래스가 개체 및 해당 슈퍼 형식에 대한 스트림의 형식과 내용을 완벽하게 제어할 수 있도록 합니다. 이러한 메서드는 해당 상태를 저장하려면 슈퍼 형식과 명시적으로 조정해야 합니다. 이러한 메서드는 writeObject 및 readObject 메서드의 사용자 지정된 구현을 대체합니다.<Br>

개체 직렬화는 직렬화 가능 및 외부화 가능 인터페이스를 사용합니다. 개체 지속성 메커니즘도 사용할 수 있습니다. 저장할 각 개체는 Externalizable 인터페이스에 대해 테스트됩니다. 개체가 Externalizable을 지원하는 경우 writeExternal 메서드가 호출됩니다. 개체가 Externalizable을 지원하지 않고 Serializable을 구현하는 경우 개체는 ObjectOutputStream을 사용하여 저장됩니다. <br> Externalizable 개체를 재구성하면 public no-arg 생성자를 사용하여 instance 만든 다음 readExternal 메서드를 호출합니다. 직렬화 가능한 개체는 ObjectInputStream에서 읽어 복원됩니다.<Br>

Externalizable instance serializable 인터페이스에 문서화된 writeReplace 및 readResolve 메서드를 통해 대체 개체를 지정할 수 있습니다.<Br>

1.1에 추가되었습니다.

에 대한 Java 설명서입니다 java.io.Externalizable.

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

속성

Handle

기본 Android 개체의 JNI 값을 가져옵니다.

(다음에서 상속됨 IJavaObject)
JniIdentityHashCode

래핑된 instance 값을 반환 java.lang.System.identityHashCode() 합니다.

(다음에서 상속됨 IJavaPeerable)
JniManagedPeerState

관리되는 피어의 상태입니다.

(다음에서 상속됨 IJavaPeerable)
JniPeerMembers

멤버 액세스 및 호출 지원.

(다음에서 상속됨 IJavaPeerable)
PeerReference

JniObjectReference 래핑된 Java 개체 instance 의 를 반환합니다.

(다음에서 상속됨 IJavaPeerable)

메서드

Disposed()

instance 삭제될 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
DisposeUnlessReferenced()

이 instance 대한 미해결 참조가 없으면 를 호출Dispose()합니다. 그렇지 않으면 아무 작업도 수행하지 않습니다.

(다음에서 상속됨 IJavaPeerable)
Finalized()

instance 완료될 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
ReadExternal(IObjectInput)

개체는 readExternal 메서드를 구현하여 기본 형식에 대해 DataInput 메서드를 호출하고 개체, 문자열 및 배열에 대해 readObject를 호출하여 콘텐츠를 복원합니다.

SetJniIdentityHashCode(Int32)

에서 반환 JniIdentityHashCode된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Externalizable instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

(다음에서 상속됨 IJavaPeerable)
SetPeerReference(JniObjectReference)

에서 반환 PeerReference된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
UnregisterFromRuntime()

런타임이 이후 Java.Interop.JniRuntime+JniValueManager.PeekValue 호출에서 반환되지 않도록 이 instance 등록을 취소합니다.

(다음에서 상속됨 IJavaPeerable)
WriteExternal(IObjectOutput)

개체는 기본 값에 대해 DataOutput 메서드를 호출하거나 개체, 문자열 및 배열에 대해 ObjectOutput의 writeObject 메서드를 호출하여 콘텐츠를 저장하는 writeExternal 메서드를 구현합니다.

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

Externalizable instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

GetJniTypeName(IJavaPeerable)

Externalizable instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

ReadExternalAsync(IExternalizable, IObjectInput)

Externalizable instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

WriteExternalAsync(IExternalizable, IObjectOutput)

Externalizable instance 클래스의 ID만 serialization 스트림에 기록되며 해당 인스턴스의 내용을 저장하고 복원하는 것은 클래스의 책임입니다.

적용 대상