catchブロックは、ロジックの記述、つまりフロー制御などの処理に使用する必要がありますか?または、例外をスローするためだけに?コードの効率や保守性に影響しますか?
catchブロックにロジックを記述した場合の副作用(ある場合)は何ですか?
編集:
catchブロック内にロジックを記述したJava SDKクラスを見てきました。例(java.lang.Integer
クラスから抜粋したスニペット):
try {
result = Integer.valueOf(nm.substring(index), radix);
result = negative ? new Integer(-result.intValue()) : result;
} catch (NumberFormatException e) {
String constant = negative ? new String("-" + nm.substring(index))
: nm.substring(index);
result = Integer.valueOf(constant, radix);
}
EDIT2:
私は、例外の中に例外的なケースのロジックを書くことの利点としてそれを数えるチュートリアルを行っていました:
例外を使用すると、コードのメインフローを記述し、例外的なケースに対処することができます。
catchブロックでロジックを作成する場合としない場合の具体的なガイドラインはありますか?