0
mainメソッドでのthrowsについて
いつもお世話になっております。
タイトルの件ですが、
public static void main (String args[]) throws Exception{・・}
↑の場合は文法的に間違っていないですが、mainメソッドでthrowsするぺきではないと思っています。
まだ勉強中なのでなんとも言えませんが、皆様はどう思いますか?
お忙しい中恐れ入れますが、宜しくお願い致します。
0
いつもお世話になっております。
タイトルの件ですが、
public static void main (String args[]) throws Exception{・・}
↑の場合は文法的に間違っていないですが、mainメソッドでthrowsするぺきではないと思っています。
まだ勉強中なのでなんとも言えませんが、皆様はどう思いますか?
お忙しい中恐れ入れますが、宜しくお願い致します。
0
初歩的な勉強用や小さなテスト的プログラムで、例外処理が重要でなければ、このずぼら/手抜きは許されます。
0
ranco様
お返事ありがとうございます。
>初歩的な勉強用や小さなテスト的プログラムで、例外処理が重要でなければ、このずぼら/手抜きは許されます。
つまり現場レベルですと許されなくなりますね。
0
私も、必ず内部で処理するな。
補足できるExceptionはロジックかJavaとしての問題だから、Java内で終わらせないと。
VM上でどうしようもない問題は、そもそもcatchできないんだし。
0
所詮mainメソッドにthrowsを付けたところで、コード内で補足義務が発生するのは、
チェック例外(RuntimeException/Error以外のサブクラス)だけ。
現場レベルではイチイチmainメソッドを必要とするケースって少ないでしょ?
バッチみたいなmainメソッドをブートストラップとするアプリであっても、
量産するならフレームワーク化するしmainメソッドなんてまず書くことないから。
なので、throwsを付けても付けなくてもどっちでもいいと思う。
mainメソッドはフレームワーク化したときの、ラウンチャー的な存在になると思うけど、
それくらいなら気をつけて書けばいいだけの話しだし。
0
俺も、mainメソッドにthrowsはつけない。
理由はb氏が書いてるとおり。
実行中のプログラムから、他のクラスからmain()を叩くことなんてまずないし。
どっちかというとそれよりも、
throwするのがExceptionなどという
おおざっぱなクラスであることの方が気になる。
質問から6ヶ月以上経過しているので、回答を書き込むことはできません。