広告

Java : BufferOverflowException - API使用例

BufferOverflowException (Java SE 23 & JDK 23) の使い方まとめです。
ほとんどのメソッドにサンプルコードがあります。
APIドキュメントのおともにどうぞ。


概要

相対put操作がターゲット・バッファのリミットに達したときにスローされる非チェック例外です。

クラス構成

BufferOverflowException は非チェック例外です。
Buffer 操作でリミットを超えた要素を追加しようとすると発生します。

final var buffer = CharBuffer.allocate(3);
System.out.println(buffer.capacity()); // 3
System.out.println(buffer.position()); // 0

buffer.put('a');
buffer.put('b');
buffer.put('c');

if (buffer.hasArray()) {
    final var array = buffer.array();
    System.out.println(Arrays.toString(array)); // [a, b, c]
}

try {
    buffer.put('d');
} catch (BufferOverflowException e) {
    System.out.println("BufferOverflowException!");
}

// 結果
// ↓
//BufferOverflowException!

コンストラクタ

BufferOverflowException ()

このクラスのインスタンスを構築します。

final var e = new BufferOverflowException();
System.out.println(e); // java.nio.BufferOverflowException

Throwableで宣言されたメソッド

addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString

Java API 使用例 : Throwable」をご参照ください。


関連記事

ページの先頭へ