org.springframework.util

## 类 ResizableByteArrayOutputStream

- java.lang.Object
- - java.io.OutputStream
  - - java.io.ByteArrayOutputStream
    - - org.springframework.util.ResizableByteArrayOutputStream

- 所有已实现的接口:
    Closeable, Flushable, AutoCloseable

      public class ResizableByteArrayOutputStream
      extends ByteArrayOutputStream

  An extension of `ByteArrayOutputStream` that:
  - has public `grow(int)` and `resize(int)` methods to get more control over the size of the internal buffer
  - has a higher initial capacity (256) by default

  As of 4.2, this class has been superseded by `FastByteArrayOutputStream` for Spring's internal use where no assignability to `ByteArrayOutputStream` is needed (since `FastByteArrayOutputStream` is more efficient with buffer resize management but doesn't extend the standard `ByteArrayOutputStream`).

  从以下版本开始:
    4.0.3
  作者:
    Brian Clozel, Juergen Hoeller
  另请参阅:
    `resize(int)`, `FastByteArrayOutputStream`

- - ### 字段概要

    - ### 从类继承的字段 java.io.ByteArrayOutputStream

      `buf, count`

  - ### 构造器概要

    构造器
    构造器和说明
    `ResizableByteArrayOutputStream()` Create a new `ResizableByteArrayOutputStream` with the default initial capacity of 256 bytes.
    `ResizableByteArrayOutputStream(int initialCapacity)` Create a new `ResizableByteArrayOutputStream` with the specified initial capacity.

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `int` | `capacity()` Return the current size of this stream's internal buffer.
    `void` | `grow(int additionalCapacity)` Grow the internal buffer size.
    `void` | `resize(int targetCapacity)` Resize the internal buffer size to a specified capacity.

    - ### 从类继承的方法 java.io.ByteArrayOutputStream

      `close, reset, size, toByteArray, toString, toString, toString, write, write, writeTo`

    - ### 从类继承的方法 java.io.OutputStream

      `flush, write`

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### 构造器详细资料

    - #### ResizableByteArrayOutputStream

          public ResizableByteArrayOutputStream()

      Create a new `ResizableByteArrayOutputStream` with the default initial capacity of 256 bytes.

    - #### ResizableByteArrayOutputStream

          public ResizableByteArrayOutputStream(int initialCapacity)

      Create a new `ResizableByteArrayOutputStream` with the specified initial capacity.
      参数:
        `initialCapacity` - the initial buffer size in bytes

  - ### 方法详细资料

    - #### resize

          public void resize(int targetCapacity)

      Resize the internal buffer size to a specified capacity.
      参数:
        `targetCapacity` - the desired size of the buffer
      抛出:
        `IllegalArgumentException` - if the given capacity is smaller than the actual size of the content stored in the buffer already
      另请参阅:
        `ByteArrayOutputStream.size()`

    - #### grow

          public void grow(int additionalCapacity)

      Grow the internal buffer size.
      参数:
        `additionalCapacity` - the number of bytes to add to the current buffer size
      另请参阅:
        `ByteArrayOutputStream.size()`

    - #### capacity

          public int capacity()

      Return the current size of this stream's internal buffer.