問題タブ [throws]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
71352 参照

c# - JavaのようにC#にthrowsキーワードはありますか?

重複の可能性:
C#でJavaスタイルのthrowsキーワードを使用する方法は?

たとえば、例外が発生する関数があります

ありがとう!

0 投票する
7 に答える
6915 参照

java - Javaの「スロー」ステートメントの目的は何ですか?

私はJavaを学んでいますが、最終的にコールスタックの先頭にあるほとんどのメソッドには、「例外をスローする」という宣言があるだけのようです。私が見逃しているこのステートメントの利点は何ですか?

もう1つの例。コードをいくつか書いた後、他の Java ライブラリのクラスを使用して、自分のクラスの 1 つを少しリファクタリングすることにしました。その結果、このクラスのメソッドの半分が宣言でさらに 5 つの例外を獲得しただけでなく、他のすべてのコードの約半分も同様でした。約。例外を間違って使用しているだけでしょうか?

重要な編集

私の質問は、そのステートメントが何をするかについてではありませんでした。ドキュメントから明らかです。なぜ言語設計者がこのステートメントを必要とすることにしたのか、私は実際に疑問に思っていました。

0 投票する
6 に答える
30249 参照

java - FileNotFoundExceptionをスローするメソッドを呼び出す

これは簡単なことだと確信していますが、簡単な答えは見つかりませんでした。でメソッドを呼び出すにはどうすればよいthrows FileNotFoundExceptionですか?

これが私の方法です:

0 投票する
3 に答える
2909 参照

java - クラスで複数のメソッドから例外をキャッチする

Javaには、同じカスタム例外をスローするいくつかのメソッドを持つクラスがあります(カスタム例外は「Exception」クラスを拡張します)。

ユーザーにこれらの例外を処理させる代わりに、それらをキャッチしてクラス内で処理できるようにしたいと思います。各メソッドの例外は、まったく同じ方法でキャッチされます。すべてのメソッドにまったく同じtry/catchメソッドブロックを配置する必要はありません。メソッドの本体の外で、クラスの内部でこれらの例外をキャッチする方法はありますか?

お手数をおかけしますが、よろしくお願いいたします。

詳細情報の追加:
これらのメソッドは、特定の時点まで呼び出される場合があります。変数「isImmutable」をtrueに設定するメソッドが呼び出された後、これらのメソッドはオブジェクトに関する情報を変更できなくなります。したがって、「isImmutable」がtrueに設定された後にこれらのメソッドのいずれかが呼び出された場合、「ImmutableException」と呼ばれる例外をスローする必要があります。/この特定の実装/では、これらのメソッドが呼び出されるコード内のすべてのポイントに移動して、まったく同じ方法で処理するのではなく、自分でこれらを処理できるようにしたいと思います。

0 投票する
3 に答える
5730 参照

java - Javaでは、MouseListenerを実装し、IOExceptionをスローするクラスをどのように持つのですか?

throws IOException は、ファイルからの入力用です。

0 投票する
4 に答える
5019 参照

java - Java: 別のスレッドに例外をスローする

次のようなJavaコードがあります。

問題は、Run() メソッドにブロックしている write() があることです。そのため、接続が送信されているかどうかをチェックする新しいスレッドを追加しました。送信していない場合は、ブロックしている write() を例外メカニズム (チェッカー スレッドから他のスレッドの run() メソッドに例外をスローする)。出来ますか?

編集[解決済み]:

唯一の方法は、出力ストリームを残酷に閉じ、書き込まれたビットの量を調べて、接続が送信されているかどうかを確認することです。

0 投票する
3 に答える
2491 参照

java - キャッチブロックのヌルポインタ

例外をキャッチするためにtrycatchブロックを使用しています。コンソールは、null値をスローしていることを示しています。しかし、それはキャッチブロックには行きません。

これはどのように処理できますか。メソッドレベルも使用できますthrows NullPointerExceptionか?

0 投票する
5 に答える
180853 参照

java - エラーメッセージ「報告されていない例外 java.io.IOException; キャッチするか、スローするように宣言する必要があります」

エラー:

filecontent.java:15: 報告されていない例外 java.io.IOException; キャッチするか、投げることを宣言する必要があります

ショーファイル(); ^ filecontent.java:78: 報告されていない例外 java.io.IOException; キャッチするか、投げることを宣言する必要があります

ショーファイル(); ^

すでに java.io.IOException をスローしましたが、それでもこれらのエラーが表示されます。

私のコード:

0 投票する
4 に答える
11100 参照

java - 継承、メソッドシグネチャ、メソッドオーバーライド、およびスロー句

Parentのクラスは:

私はextendこのクラスでサブクラスを作成しますChild

クラスのgetXメソッドをオーバーライドしているときに、メソッド定義から句を削除したことに注意してください。これで、コンパイラーによる異常な動作が予想されます。Childthrows

try-catch予想どおり、ブロックで囲まずにコンパイルすることはありません。

ブロックで囲まずにコンパイルしtry-catchます。

ただし、以下のコード行にはtry-catchブロックが必要です。

これは予測可能であるため、つまり、実行時のポリモーフィズム中に親クラス参照を使用して子メソッドを呼び出すことができるので、Javaの設計者が、特定の親クラスメソッドをオーバーライドするときにメソッド定義にthrows句を含めることを必須にしないのはなぜですか?つまり、親クラスのメソッドの定義にthrows句が含まれている場合、それをオーバーライドするときに、オーバーライドするメソッドにもthrows句を含める必要があります。

0 投票する
7 に答える
2627 参照

java - スローされた例外をファイルに書き込む

try catch ブロックを使用せずに、スローされた例外をファイルに書き込むことは可能ですか?

例えば

または、次のことを行う必要がありますか?