Haruskah blok tangkap digunakan untuk menulis logika yaitu menangani kontrol aliran dll? Atau hanya untuk melempar pengecualian? Apakah ini memengaruhi efisiensi atau pemeliharaan kode?
Apa efek samping (jika ada) dari logika penulisan di catch block?
EDIT:
Saya telah melihat kelas Java SDK di mana mereka telah menulis logika di dalam blok tangkap. Misalnya (cuplikan diambil dari java.lang.Integer
kelas):
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 :
Saya telah melalui tutorial di mana mereka menghitungnya sebagai keuntungan dari penulisan logika kasus luar biasa di dalam pengecualian:
Pengecualian memungkinkan Anda untuk menulis alur utama kode Anda dan untuk menangani kasus luar biasa di tempat lain.
Adakah pedoman khusus kapan menulis logika di catch block dan kapan tidak?