class throwseg1
{
void show() throws Exception
{
throw new Exception("my.own.Exception");
}
void show2() throws Exception // Why throws is necessary here ?
{
show();
}
void show3() throws Exception // Why throws is necessary here ?
{
show2();
}
public static void main(String s[]) throws Exception // Why throws is necessary here ?
{
throwseg1 o1 = new throwseg1();
o1.show3();
}
}
なぜコンパイラレポートその方法show2()、show3()およびmain()持っています
報告されない例外スローするためにキャッチまたは宣言する必要のある例外
throws Exceptionこれらのメソッドから削除するとどうなりますか?
Exception、我々は呼び出すメソッド(定義する必要が方法2を持ちます)throws Exception。呼び出しメソッドでその例外を渡さない場合。この目的は、呼び出すメソッド(に頭を放棄することである法3の)方法2例外によってスローすることができることを方法2それはあなたのプログラムを中断して、他の、そしてあなたはここでそれを処理する必要があります。
throws Exception、メソッド定義で定義して、呼び出し元のメソッドを解放する必要がありました。以前のコメントの拡張
