当前位置 类层次(JDK) 所有类(JDK) 所有域和方法(JDK)

接口 java.io.Externalizable

public interface Externalizable
extends Serializable

Externalization 允许一个类指定用于读写流的方法。类实现的 Externalizable 接口的 writeExternal 和 readExternal 方法,使它可以完全控制流中某对象和它的子类型的格式和内容。这些方法必须同它的父类型协调来保存它状态。
串行化对象使用 Serializable 和 Externalizable 接口。另外对象的持久性机制也使用这两接口。测试被保存的每个对象的 Externalizable 接口。如果该对象支持它,则调用 writeExternal 方法。如果该对象不支持 Externalizable,但实现了 Serializable,那么应使用 ObjectOutputStream 方法保存它。
当重新创建一个 Externalizable 对象时,使用公有的无参构造子创建一个实例,同时调用 readExternal 方法。从 ObjectInputStream 中读取数据恢复可序列化对象。

来自:
JDK1.1
参见:
ObjectOutputStream, ObjectInputStream, ObjectOutput, ObjectInput, Serializable

方法索引

readExternal(ObjectInput)
对象实现 readExternal 方法以恢复它的内容,对于基本类型的对象调用 DataInput 的方法执行恢复,对于对象、串和数组等对象则调用 readObject 方法恢复。
writeExternal(ObjectOutput)
对象实现 writeExternal 方法以保存它的内容,对于它的基本类型值的保存调用 DataOutput 的方法,对于对象、串和数组的保存调用 ObjectOutput 的 writeObject。

方法

writeExternal
 public abstract void writeExternal(ObjectOutput out) throws IOException
对象实现 writeExternal 方法以保存它的内容,对于它的基本类型值的保存调用 DataOutput 的方法,对于对象、串和数组的保存调用 ObjectOutput 的 writeObject。

抛出: IOException
包括可能出现的任一 I/O 异常。
readExternal
 public abstract void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
对象实现 readExternal 方法以恢复它的内容,对于基本类型的对象的恢复调用 DataInput 的方法,对于对象、串和数组等的恢复调用 readObject 方法。 readExternal 方法必须以这些变量值被 writeExternal 方法写入时的同样类型和顺序读取。

抛出: ClassNotFoundException
如果没有找到被恢复对象对应的类。

当前位置 类层次(JDK) 所有类(JDK) 所有域和方法(JDK)