Java.io.ObjectInputStream 类


介绍

Java.io.ObjectInputStream类序列化先前使用 ObjectOutputStream 编写的原始数据和对象。以下是有关 BufferedInputStream 的要点 -

  • 它用于恢复以前序列化的那些对象。它确保从流创建的图中所有对象的类型与 Java 虚拟机中存在的类相匹配。

  • 使用标准机制根据需要加载类。

类声明

以下是Java.io.ObjectInputStream类的声明-

public class ObjectInputStream
   extends InputStream
      implements ObjectInput, ObjectStreamConstants

类构造函数

先生。 构造函数及描述
1

受保护的对象输入流()

这为完全重新实现 ObjectInputStream 的子类提供了一种方法,使其不必分配仅由该 ObjectInputStream 实现使用的私有数据。

2

对象输入流(输入流中)

这将创建一个从指定的 InputStream 读取的 ObjectInputStream。

类方法

先生。 方法及说明
1 int 可用()

此方法返回可以在不阻塞的情况下读取的字节数。

2 无效关闭()

该方法关闭输入流。

3 无效defaultReadObject()

此方法从此流中读取当前类的非静态和非瞬态字段。

4 受保护的布尔enableResolveObject(布尔启用)

此方法使流能够允许替换从流中读取的对象。

5 int 读取()

该方法读取一个字节的数据。

6 int read(byte[] buf, int off, int len)

此方法读入字节数组。

7 布尔值 readBoolean()

该方法读取一个布尔值。

8 字节读取字节()

该方法读取 8 位字节。

9 字符 readChar()

此方法 ra 16 位字符。

10 受保护的 ObjectStreamClass readClassDescriptor()

该方法从序列化流中读取类描述符。

11 双读Double()

此方法读取 64 位双精度值。

12 ObjectInputStream.GetField readFields()

此方法从流中读取持久字段并按名称使其可用。

13 浮点数 readFloat()

此方法读取 32 位浮点数。

14 无效 readFully(byte[] buf)

此方法读取字节,阻塞直到读取所有字节。

15 void readFully(byte[] buf, int off, int len)

此方法读取字节,阻塞直到读取所有字节。

16 int 读取Int()

该方法读取 32 位 int。

17 号 长读Long()

该方法读取64位长。

18 对象读取对象()

此方法从 ObjectInputStream 读取对象。

19 受保护对象 readObjectOverride()

此方法由使用受保护的无参数构造函数构造 ObjectOutputStream 的受信任子类调用。

20 短 readShort()

此方法读取 16 位短数据。

21 受保护无效 readStreamHeader()

提供此方法是为了允许子类读取并验证自己的流标头。

22 对象 readUnshared()

此方法从 ObjectInputStream 读取“非共享”对象。

23 int readUnsignedByte()

此方法读取无符号 8 位字节。

24 int readUnsignedShort()

此方法读取无符号 16 位短整型。

25 字符串读取UTF()

此方法读取修改后的 UTF-8 格式的字符串。

26 无效registerValidation(ObjectInputValidation obj,int prio)

此方法在返回图之前注册一个要验证的对象。

27 protected Class<?>resolveClass(ObjectStreamClass desc)

此方法加载指定流类描述的本地类等效项。

28 受保护的对象resolveObject(对象obj)

此方法将允许 ObjectInputStream 的受信任子类在反序列化期间用一个对象替换另一个对象。

29 protected Class<?>resolveProxyClass(String[]接口)

该方法返回一个代理类,该类实现代理类描述符中指定的接口;子类可以实现此方法以从流中读取自定义数据以及动态代理类的描述符,从而允许它们对接口和代理类使用备用加载机制。

30 int 跳过字节(int len)

此方法会跳过字节。

继承的方法

该类继承了以下类的方法 -

  • Java.io.InputStream
  • Java.io.对象
  • Java.io.ObjectInput