Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

OJC-P試験問題集の誤解等?

OJC-P試験問題集で「例外とアサーション」の問題で、
下記のような問題があるのですが、どうしても解答に納
得が行きません。

[問題内容]
以下のプログラムの実行時に表示される値として正しい
ものを選びなさい。

class Sample{
  public static void main(String[] args){
    int a = 10; int b = 0;
    try{
      b++;
      int c = a / b;
    }catch(Exception e){
      a++;
    }finally{
      a++;
    }
    System.out.println(a++);
  }
}

A.10、B.11、C.12、D.13、E.何も表示されない

問題集の解答では「B.11」となっています。
解説には「例外は発生せずにfinallyブロックを実行し
て正常に終了します。」
と書かれています。

でも、これって間違いなくゼロ割り例外
(ArithmeticException)が発生しますよね?
なので、私の解答では「C:12」が正しいのでは無いかと
思うのです。

実際、正しい答えはどちらなんでしょうか?
どなたか、ご教授頂けたらと思います。

どうぞ、宜しくお願い致します。

3

回答

10894

閲覧

3件の回答

評価

0

すいません、題名を間違えましたm(__)m
(誤)誤解等→(正)誤解答

評価

0

割り算の直前にある行は読んでるのか。

評価

0

> 割り算の直前にある行は読んでるのか。
あぁぁっ、これか!
    try{
      b++; ←
      int c = a / b;
 
確かに例外は起きませんね…。
すみません、完全に見落としてました。

ありがとうございました。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。