[解決済み] Java のメソッド宣言で throws を使用するのはいつですか?
2023-05-22 04:12:34
質問
私はJavaの例外処理について十分な基本的理解を持っていると思っていましたが、最近いくつかのコードを読んでいて、いくつかの混乱と疑念を抱くようになりました。ここで取り上げたい私の主な疑問は、次のような Java メソッド宣言で、いつ throws を使用すべきか、ということです。
public void method() throws SomeException
{
// method body here
}
同じような投稿をいくつか読んだところ、私は を投げる は一種の宣言として使われていて SomeException がメソッドの実行中に投げられる可能性があるという宣言として使用されます。
私の混乱は、次のようないくつかのコードからきています。
public void method() throws IOException
{
try
{
BufferedReader br = new BufferedReader(new FileReader("file.txt"));
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
を使いたい理由はあるのでしょうか? を投げる を使いたい理由はありますか?IOExceptionのような基本的な例外処理を行うだけであれば、try/catchブロックが必要なだけだと思われます。
どのように解決するのですか?
例外タイプをキャッチしている場合、それを再スローするのでなければ、スローする必要はありません。 あなたが投稿した例では、開発者はどちらか一方を行うべきで、両方を行うべきではありませんでした。
一般的に、例外に対して何もするつもりがないのであれば、それをキャッチするべきではありません。
最も危険なことは、例外をキャッチして何もしないことです。
例外を投げることが適切な場合についての良い議論は、こちらです。
関連
-
ajax コミット リソースの読み込みに失敗しました: サーバーはステータス 400 で応答しました ()
-
名前 'XXX' を持つ Bean の作成に失敗しました。自動依存関係の注入に失敗しました 解決方法
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] Java Mapの各エントリを効率的に反復処理するには?
-
[解決済み] Javaでメモリーリークを発生させるにはどうしたらいいですか?
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
-
[解決済み】C#で例外をキャッチして再スローする理由とは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
undefined[sonar] sonar:デフォルトのスキャンルール
-
アクセス制限です。タイプ 'JPEGCodec' は API ではない ☞My Blog Github ☜ ホームページを見る
-
型に解決できない エラー解決
-
Java の switch case 文で必要な定数式の問題の解決法
-
java send https request prompt java.security.cert.について。
-
Javaがエラーで実行される、選択が起動できない、最近起動したものがない
-
Java:未解決コンパイル問題の解決方法
-
テストが空であるかどうかを判断するためのオプションの処理
-
CAS 5.1.8でhttpをサポートし、認証されていない認可サービスエラーのプロンプトが表示される問題を解決した。
-
[解決済み] 例外を発生させるタイミングは?