-1
での出力
私は、コンパイラが出力しない、例外続くコードの数行を実行するために起こっていると例外をスローしたとき確実に伝えることができるようにしたいと思います。さらに私のポイントを説明するために例外とJava
は、次のコードを考えてみます。
public class OverAndOver {
static String s = "";
public static void main(String[] args) {
try {
s += "1";
throw new Exception();
} catch (Exception e) { s += "2";
} finally { s += "3"; doStuff(); s += "4";
}
System.out.println(s);
}
static void doStuff() { int x = 0; int y = 7/x; }
}
doStuff()メソッドでチラッとあなたはコンパイラがゼロ除算例外をスローするために起こっている知っています。
ここで私の質問です(と私の混乱の原因):なぜコンパイラは "123"の後に例外が表示されませんでしたか?そして最も重要なのは、コンパイラが例外をスローする前にいくつかのコード行を実行するとき、そして出力なしですぐに例外をスローするときにどうすればいいのかを確かめることができますか?
サイドポイント:おそらく実行時環境を意味し、コンパイラはコードを実行しません。 –
私の修正をありがとう。 +1 –