JavaでTimeoutException をthrowする際、メッセージを追加したいです。
以下のように、括弧の中に文字列を含めた場合、プログラム実行するとNullPointerE xceptionが出力されてしまいます。
Java
1 2if(条件){ 3 throw new TimeoutException("ゲームオーバー"); 4}
逆に、括弧の中には何も記載せずにプログラムを実行すると、TimeoutExceptionが出力されます。
目的としては、TimeoutExcepionとメッセージ"ゲームオーバー"を出力させたいのですが、実現方法がわかりません。
どうすれば実現できるでしょうか。
NullPointerException例外は起きませんね。質問者さんのコードの別の部分の問題だと思います。
C> type Main.java
import java.util.concurrent.*;
public class Main {
public static void main(String[] args) {
try {
throw new TimeoutException("ゲームオーバー");
} catch (TimeoutException ex) {
System.out.println(ex.getMessage());
ex.printStackTrace();
}
}
}
C>javac Main.java
C>java Main
ゲームオーバー
java.util.concurrent.TimeoutException: ゲームオーバー
at Main.main(Main.java:5)
<<<実行例ここまで
コードを略さず適切に引用し、実行例も質問文中に示しましょう。
この TimeoutException は実は自作品という可能性も・・・。
NullPointerException の詳細(ログ)と、TimeOutException の位置から NullPointerException が発生する位置までに通過するコードをご提示頂けますか。