私はこれについては間違いを捕まえるつもりだと確信しています...しかし、私はtry
/catch
ブロックのない言語から来ており、Java例外キャッチについて学んでおり、それがどのようになっていないかを理解するのに苦労しています検証の怠惰なバージョンです。私は次のようないくつかの例を見てきました:
String Box [] = {"Book", "Pen", "Pencil"};
while(i<4)
{
try
{
System.out.println(Box[i]);
}
catch(ArrayIndexOutOfBoundsException e)
{
System.out.println("Subscript Problem " + e);
i++;
}
と:
int y = 0;
int x = 1;
// try block to "SEE" if an exception occurs
try
{
int z = x/y;
System.out.println("after division");
}
catch (ArithmeticException ae)
{
System.out.println(" attempt to divide by 0");
}
これらは明らかに非常に初歩的な例です...しかし、IMOはエラーをキャッチするためのひどい例であるか、それを行う正当な理由がありません。たとえば、要素の数をループする場合Box
、範囲外のインデックスをチェックする必要はありません。例2では、除数が0であることを確認する場合、それを確認する必要はありませんArithmeticException
。
/ブロックを使用する方が昔ながらの変数検証よりも優れている良い例や理由はありますか?それとも単に「Java」の方法ですか?try
catch