# Java.io.ObjectOutputStream类 - Java.io包 **Java.io.ObjectOutputStream** 类写入基本数据类型和Java对象的图形到OutputStream。这些对象可以被读取(重组)使用ObjectInputStream。 ## 类声明 以下是java.io.ObjectOutputStream类的声明: ``` public class ObjectOutputStream extends OutputStream implements ObjectOutput, ObjectStreamConstants ``` ## 类构造函数 | S.N. | 构造函数 & 描述 | | --- | --- | | 1 | **protected ObjectOutputStream() ** 这提供了一种方法,子类是完全重新实现ObjectOutputStream来不必分配仅由这个实现ObjectOutputStream的私有数据。 | | 2 | **ObjectOutputStream(OutputStream out) ** 这将创建一个指定的OutputStream写入到一个ObjectOutputStream。 | ## 类方法 | S.N. | 方法 & 描述 | | --- | --- | | 1 | [protected void annotateClass(Class <?> cl) ](http://www.yiibai.com/java/io/objectoutputstream_annotateclass.html) 子类可以实现此方法允许类的数据被存储在流中。 | | 2 | [protected void annotateProxyClass(Class<?> cl) ](http://www.yiibai.com/java/io/objectoutputstream_annotateproxyclass.html) 子类可以实现此方法来存储自定义数据的描述符动态代理类的流中。 | | 3 | [void close() ](http://www.yiibai.com/java/io/objectoutputstream_close.html) 此方法关闭该流。 | | 4 | [void defaultWriteObject() ](http://www.yiibai.com/java/io/objectoutputstream_defaultwriteobject.html) 此方法写入当前类的非静态和非瞬态字段写入此流。 | | 5 | [protected void drain() ](http://www.yiibai.com/java/io/objectoutputstream_drain.html) 此方法排出ObjectOutputStream的所有缓冲的数据。 | | 6 | [protected boolean enableReplaceObject(boolean enable) ](http://www.yiibai.com/java/io/objectoutputstream_enablereplaceobject.html) 此方法使流执行流中的替换对象。 | | 7 | [void flush() ](http://www.yiibai.com/java/io/objectoutputstream_flush.html) 此方法刷新流。 | | 8 | [ObjectOutputStream.PutField putFields() ](http://www.yiibai.com/java/io/objectoutputstream_putfields.html) 此方法检索用于缓冲持久性字段被写入流的对象。 | | 9 | [protected Object replaceObject(Object obj) ](http://www.yiibai.com/java/io/objectoutputstream_replaceobject.html) 此方法允许ObjectOutputStream的受信任子类的序列化过程中一个对象替代另一个。 | | 10 | [void reset() ](http://www.yiibai.com/java/io/objectoutputstream_reset.html) 此方法复位将忽略已经写入流中的任何对象的状态。 | | 11 | [void useProtocolVersion(int version) ](http://www.yiibai.com/java/io/objectoutputstream_useprotocolversion.html) 将数据写入流时,此方法指定流协议版本才能使用。 | | 12 | [void write(byte[] buf) ](http://www.yiibai.com/java/io/objectoutputstream_write_byte.html) 此方法写入的字节数组.. | | 13 | [void write(byte[] buf, int off, int len) ](http://www.yiibai.com/java/io/objectoutputstream_write_byte_len.html) 此方法写入的字节子数组。 | | 14 | [void write(int val) ](http://www.yiibai.com/java/io/objectoutputstream_write.html) 此方法写入一个字节。 | | 15 | [void writeBoolean(boolean val) ](http://www.yiibai.com/java/io/objectoutputstream_writeboolean.html) 此方法写入一个布尔值。 | | 16 | [void writeByte(int val) ](http://www.yiibai.com/java/io/objectoutputstream_writebyte.html) 此方法写入一个8位字节。 | | 17 | [void writeBytes(String str) ](http://www.yiibai.com/java/io/objectoutputstream_writebytes.html) 此方法写入一个String作为一个字节序列。 | | 18 | [void writeChar(int val) ](http://www.yiibai.com/java/io/objectoutputstream_writechar.html) 此方法写入一个16位字符。 | | 19 | [void writeChars(String str) ](http://www.yiibai.com/java/io/objectoutputstream_writechars.html) 此方法写入一个字符串作为字符的序列。 | | 20 | [protected void writeClassDescriptor(ObjectStreamClass desc) ](http://www.yiibai.com/java/io/objectoutputstream_writeclassdescriptor.html) 此方法写入指定的类描述符的对象输出流。 | | 21 | [void writeDouble(double val) ](http://www.yiibai.com/java/io/objectoutputstream_writedouble.html) 此方法写入一个64位double。 | | 22 | [void writeFields() ](http://www.yiibai.com/java/io/objectoutputstream_writefields.html) 此方法写入缓冲字段的流.. | | 23 | [void writeFloat(float val) ](http://www.yiibai.com/java/io/objectoutputstream_writefloat.html) 此方法写入一个32位浮点数。 | | 24 | [void writeInt(int val) ](http://www.yiibai.com/java/io/objectoutputstream_writeint.html) 此方法写入一个32位整数。 | | 25 | [void writeLong(long val) ](http://www.yiibai.com/java/io/objectoutputstream_writelong.html) 此方法写入一个64位long。 | | 26 | [void writeObject(Object obj) ](http://www.yiibai.com/java/io/objectoutputstream_writeobject.html) 此方法将指定的对象写入ObjectOutputStream中。 | | 27 | [protected void writeObjectOverride(Object obj) ](http://www.yiibai.com/java/io/objectoutputstream_writeobjectoverride.html) 此方法由子类重写默认writeObject方法。 | | 28 | [void writeShort(int val) ](http://www.yiibai.com/java/io/objectoutputstream_writeshort.html) 此方法写入一个16位的short.. | | 29 | [protected void writeStreamHeader() ](http://www.yiibai.com/java/io/objectoutputstream_writestreamheader.html) 提供此方法,所以子类可以追加或预先准备自己的头流。 | | 30 | [void writeUnshared(Object obj) ](http://www.yiibai.com/java/io/objectoutputstream_writeunshared.html) 此方法写入了“非共享”对象到对象输出流。 | | 31 | [void writerUTF(String str) ](http://www.yiibai.com/java/io/objectoutputstream_writerutf.html) 这个字符串在经修订的UTF-8格式此方法原始数据写入。 | ## 继承的方法 这个类继承自以下类方法: * Java.io.Object