★★Java質問・相談スレッド150★★
■ このスレッドは過去ログ倉庫に格納されています
0564デフォルトの名無しさん
2012/01/08(日) 15:43:26.52このソースの場合はMyCalcクラスのcheckメソッドにおいて、0での除算を行おうとする事によって例外が発生し、
呼び出し元のmainメソッドに戻り、「実行結果は 例外発生 となる」とあります。
例外を呼び出し元に返すためには
void check() throws Exception {
としなければならないのではと思ったのですが、問題ないのでしょうか。
Exceptionならば問題あるけれど、0での除算によるエラー(ArithmeticException)は
非チェック例外のRuntimeExceptionのサブクラスだから
throws〜の記述が無くてもきちんと動くという認識で良いのでしょうか?
class Sample {
public static void main(String[] args){
try{
MyCalc mc = MyCalc();
mc.check();
}catch(Exception e){
System.out.println("例外発生");
}
}
}
class MyCalc{
void check(){
int a = 5 / 0;
System.out.println("開始");
}
}
■ このスレッドは過去ログ倉庫に格納されています