Java : OutOfMemoryError - API使用例

OutOfMemoryError (Java SE 18 & JDK 18) の使用例まとめです。
だいたいのメソッドを網羅済みです。
API仕様のおともにどうぞ。


概要

メモリー不足のためにJava Virtual Machineがオブジェクトを割り当てることができず、ガベージ・コレクタによっても使用可能なメモリーをこれ以上確保できない場合にスローされます。

クラス構成

OutOfMemoryError は、メモリ確保に失敗したときに発生するエラーです。

try {
    final var array = new int[1000000000];
} catch (OutOfMemoryError e) {
    System.out.println(e);
}

// 結果
// ↓
//java.lang.OutOfMemoryError: Java heap space

上記の例では OutOfMemoryError をキャッチしていますが、基本的にはエラーをキャッチするのはおすすめしません。
そのあたりの詳しいことは下記の記事にて解説しています。

もし興味がありましたら、そちらもご参照いただけたら幸いです。


コンストラクタ

OutOfMemoryError ()

詳細メッセージなしでOutOfMemoryErrorを構築します。

final var e = new OutOfMemoryError();
System.out.println(e); // java.lang.OutOfMemoryError

OutOfMemoryError (String s)

指定された詳細メッセージを持つOutOfMemoryErrorを構築します。

final var e = new OutOfMemoryError("abcd");
System.out.println(e); // java.lang.OutOfMemoryError: abcd
System.out.println(e.getMessage()); // abcd

Throwableで宣言されたメソッド

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

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


関連記事

ページの先頭へ