Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Methods](https://developer.android.com/reference/java/io/ObjectOutput#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/java/io/ObjectOutput#inhmethods)

# ObjectOutput


`
public


interface
ObjectOutput
`


`


implements

https://developer.android.com/reference/java/lang/AutoCloseable,

https://developer.android.com/reference/java/io/DataOutput


`

|---|
| java.io.ObjectOutput |

|---|
| Known indirect subclasses [ObjectOutputStream](https://developer.android.com/reference/java/io/ObjectOutputStream) |---|---| | [ObjectOutputStream](https://developer.android.com/reference/java/io/ObjectOutputStream) | An ObjectOutputStream writes primitive data types and graphs of Java objects to an OutputStream. | |

<br />

*** ** * ** ***

ObjectOutput extends the DataOutput interface to include writing of objects.
DataOutput includes methods for output of primitive types, ObjectOutput
extends that interface to include objects, arrays, and Strings.
**See also:**

- `https://developer.android.com/reference/java/io/InputStream`
- `https://developer.android.com/reference/java/io/ObjectOutputStream`
- `https://developer.android.com/reference/java/io/ObjectInputStream`

## Summary

| ### Public methods ||
|---|---|
| ` abstract void` | ` https://developer.android.com/reference/java/io/ObjectOutput#close()() ` Closes the stream. |
| ` abstract void` | ` https://developer.android.com/reference/java/io/ObjectOutput#flush()() ` Flushes the stream. |
| ` abstract void` | ` https://developer.android.com/reference/java/io/ObjectOutput#write(byte[])(byte[] b) ` Writes an array of bytes. |
| ` abstract void` | ` https://developer.android.com/reference/java/io/ObjectOutput#write(byte[],%20int,%20int)(byte[] b, int off, int len) ` Writes a sub array of bytes. |
| ` abstract void` | ` https://developer.android.com/reference/java/io/ObjectOutput#write(int)(int b) ` Writes a byte. |
| ` abstract void` | ` https://developer.android.com/reference/java/io/ObjectOutput#writeObject(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) ` Write an object to the underlying storage or stream. |

| ### Inherited methods |
|---|---|
| From interface ` https://developer.android.com/reference/java/lang/AutoCloseable ` |---|---| | ` abstract void` | ` https://developer.android.com/reference/java/lang/AutoCloseable#close()() ` Closes this resource, relinquishing any underlying resources. | ||
| From interface ` https://developer.android.com/reference/java/io/DataOutput ` |---|---| | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#write(byte[])(byte[] b) ` Writes to the output stream all the bytes in array `b`. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#write(byte[],%20int,%20int)(byte[] b, int off, int len) ` Writes `len` bytes from array `b`, in order, to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#write(int)(int b) ` Writes to the output stream the eight low-order bits of the argument `b`. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeBoolean(boolean)(boolean v) ` Writes a `boolean` value to this output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeByte(int)(int v) ` Writes to the output stream the eight low- order bits of the argument `v`. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeBytes(java.lang.String)(https://developer.android.com/reference/java/lang/String s) ` Writes a string to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeChar(int)(int v) ` Writes a `char` value, which is comprised of two bytes, to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeChars(java.lang.String)(https://developer.android.com/reference/java/lang/String s) ` Writes every character in the string `s`, to the output stream, in order, two bytes per character. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeDouble(double)(double v) ` Writes a `double` value, which is comprised of eight bytes, to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeFloat(float)(float v) ` Writes a `float` value, which is comprised of four bytes, to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeInt(int)(int v) ` Writes an `int` value, which is comprised of four bytes, to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeLong(long)(long v) ` Writes a `long` value, which is comprised of eight bytes, to the output stream. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeShort(int)(int v) ` Writes two bytes to the output stream to represent the value of the argument. | | ` abstract void` | ` https://developer.android.com/reference/java/io/DataOutput#writeUTF(java.lang.String)(https://developer.android.com/reference/java/lang/String s) ` Writes two bytes of length information to the output stream, followed by the [modified UTF-8](https://developer.android.com/reference/java/io/DataInput#modified-utf-8) representation of every character in the string `s`. | ||

## Public methods

### close

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void close ()
```

Closes the stream. This method must be called
to release any resources associated with the
stream.

<br />

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/io/IOException` | If an I/O error has occurred. |

### flush

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void flush ()
```

Flushes the stream. This will write any buffered
output bytes.

<br />

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/io/IOException` | If an I/O error has occurred. |

### write

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void write (byte[] b)
```

Writes an array of bytes. This method will block until the bytes
are actually written.

<br />

| Parameters ||
|---|---|
| `b` | `byte`: the data to be written <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/io/IOException` | If an I/O error has occurred. |

### write

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void write (byte[] b, 
                int off, 
                int len)
```

Writes a sub array of bytes.

<br />

| Parameters ||
|---|---|
| `b` | `byte`: the data to be written <br /> |
| `off` | `int`: the start offset in the data <br /> |
| `len` | `int`: the number of bytes that are written <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/io/IOException` | If an I/O error has occurred. |

### write

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void write (int b)
```

Writes a byte. This method will block until the byte is actually
written.

<br />

| Parameters ||
|---|---|
| `b` | `int`: the byte <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/io/IOException` | If an I/O error has occurred. |

### writeObject

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void writeObject (Object obj)
```

Write an object to the underlying storage or stream. The
class that implements this interface defines how the object is
written.

<br />

| Parameters ||
|---|---|
| `obj` | `Object`: the object to be written <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/io/IOException` | Any of the usual Input/Output related exceptions. |