Java 简明教程

Java.io.ObjectOutputStream Class

Introduction

Java.io.ObjectOutputStream 类将原始数据类型和 Java 对象图写入 OutputStream。可以使用 ObjectInputStream 读取(重新构造)对象。

Class declaration

以下是 Java.io.ObjectOutputStream 类的声明 −

public class ObjectOutputStream
   extends OutputStream
      implements ObjectOutput, ObjectStreamConstants

Class constructors

Sr.No.

Constructor & Description

1

protected ObjectOutputStream() 这为完全重新实现 ObjectOutputStream 的子类提供了一种方法,无需分配仅由 ObjectOutputStream 的此实现使用的私有数据。

2

ObjectOutputStream(OutputStream out) 此方法创建 ObjectOutputStream,该 ObjectOutputStream 可写入指定的 OutputStream。

Class methods

Sr.No.

Method & Description

1

protected void annotateClass(Class <?> cl) 子类可以实现此方法,以便将类数据存储在流中。

2

protected void annotateProxyClass(Class<?> cl) 子类可以实现此方法与动态代理类的描述符一起将自定义数据存储在流中。

3

void close() 此方法关闭流。

4

void defaultWriteObject() 此方法将当前类的非静态且非瞬态字段写入此流。

5

protected void drain() 此方法排空 ObjectOutputStream 中的任何缓冲数据。

6

protected boolean enableReplaceObject(boolean enable) 此方法使流能够替换流中的对象。

7

void flush() 此方法刷新流。

8

ObjectOutputStream.PutField putFields() 此方法检索用于缓冲要写入流的持久化字段的对象。

9

protected Object replaceObject(Object obj) 此方法将允许 ObjectOutputStream 的受信任子类在序列化期间将一个对象替换为另一个对象。

10

void reset() 此方法重置将忽略已写入流的任何对象的关,

11

void useProtocolVersion(int version) 此方法在写入流时指定要使用的流协议版本。

12

void write(byte[] buf) 此方法写入字节数组。

13

void write(byte[] buf, int off, int len) 此方法写入字节的子数组。

14

void write(int val) 此方法写入一个字节。

15

void writeBoolean(boolean val) 此方法写入一个布尔值。

16

void writeByte(int val) 此方法写入一个 8 位字节。

17

void writeBytes(String str) 此方法将一个字符串作为一系列字节来写入。

18

void writeChar(int val) 此方法写入一个 16 位字符。

19

void writeChars(String str) 此方法将一个字符串作为一系列字符来写入。

20

protected void writeClassDescriptor(ObjectStreamClass desc) 此方法将指定类描述符写入 ObjectOutputStream。

21

void writeDouble(double val) 此方法写入一个 64 位双精度浮点数。

22

void writeFields() 此方法写入流的缓冲字段。

23

void writeFloat(float val) 此方法写入一个 32 位浮点数。

24

void writeInt(int val) 此方法写入一个 32 位整数。

25

void writeLong(long val) 此方法写入一个 64 位长整数。

26

void writeObject(Object obj) 此方法将指定对象写入 ObjectOutputStream。

27

protected void writeObjectOverride(Object obj) 子类用此方法来覆盖默认的 writeObject 方法。

28

void writeShort(int val) 此方法写入一个 16 位短整型。

29

protected void writeStreamHeader() 提供此方法以便子类可以向流追加或预先附加它们自己的标头。

30

void writeUnshared(Object obj) 此方法将“非共享”对象写入 ObjectOutputStream。

Methods inherited

此类从以下类中继承方法:

  1. Java.io.Object