Java : ClassNotFoundException - API使用例
ClassNotFoundException (Java SE 21 & JDK 21) の使用例まとめです。
だいたいのメソッドを網羅済みです。
API仕様書のおともにどうぞ。
概要
アプリケーションが、クラスの文字列名を使用して次のメソッドでロードしようとしたが、指定された名前のクラスの定義が見つからなかった場合にスローされます。
ClassNotFoundException は、クラス名の文字列から Class クラスを取得しようとして、そのクラスが見つからないときに発生するチェック例外です。
public class Foo {
}
public class Main {
public static void main(String[] args) {
try {
// 存在するクラス名を指定。
final var foo = Class.forName("Foo");
System.out.println("foo : " + foo);
// 存在しないクラス名を指定。
final var bar = Class.forName("Bar");
} catch (ClassNotFoundException e) {
System.out.println("ClassNotFoundException! : " + e.getMessage());
}
}
}
// 結果
// ↓
//> java Main
//foo : class Foo
//ClassNotFoundException! : Bar
コンストラクタ
ClassNotFoundException ()
詳細メッセージなしでClassNotFoundExceptionを構築します。
final var e = new ClassNotFoundException();
System.out.println(e); // java.lang.ClassNotFoundException
ClassNotFoundException (String s)
指定された詳細メッセージを持つClassNotFoundExceptionを構築します。
final var e = new ClassNotFoundException("abcde");
System.out.println(e); // java.lang.ClassNotFoundException: abcde
System.out.println(e.getMessage()); // abcde
ClassNotFoundException (String s, Throwable ex)
指定された詳細メッセージと、クラスのロード時に生じたオプションの例外を持つ、ClassNotFoundExceptionを構築します。
final var ex = new ClassNotFoundException("XYZ");
final var e = new ClassNotFoundException("abc", ex);
System.out.println(e); // java.lang.ClassNotFoundException: abc
System.out.println(e.getMessage()); // abc
System.out.println(e.getException()); // java.lang.ClassNotFoundException: XYZ
System.out.println(e.getException().getMessage()); // XYZ
メソッド
Throwable getException ()
クラスのロードを試みているときにエラーが発生した場合は生じた例外を返します。
final var ex = new ClassNotFoundException("XYZ");
final var e = new ClassNotFoundException("abc", ex);
System.out.println(e); // java.lang.ClassNotFoundException: abc
System.out.println(e.getMessage()); // abc
System.out.println(e.getException()); // java.lang.ClassNotFoundException: XYZ
System.out.println(e.getException().getMessage()); // XYZ
Throwableで宣言されたメソッド
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
「Java API 使用例 : Throwable」をご参照ください。