問題タブ [checked-exceptions]

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 投票する
2 に答える
66 参照

java - プロトタイピング中にチェック例外を自動的に追加/削除する

throws特にプロトタイピング中は、句を手動で追加/削除したくありません。throwsコードを反映するためにすべてのメソッドに句を追加/削除するバッチ リファクタリング ツールはありますか? 結局のところ、コンパイラはメソッドがスローする可能性のある例外を通知するため、その情報を使用してthrows句を操作するツールが存在する可能性があります。

編集: バッチ ツールを探していることを明確にする前に、誰かが IDE を介した手動介入について言及しましたが、これは私が探しているものではありません。バッチユーティリティを探しています。

0 投票する
2 に答える
161 参照

java - 例外の連鎖、例外をキャッチして新しい例外をスローする

次のコードがプログラム (Java) の一部であると想像してください。

また、関数 z 内で例外 SomeException または SomeOtherException がスローされた場合、関数 x および y が意図したとおりに実行されないことを想像してください。関数 x と y が関数 z で例外がスローされたことを認識し、それに応じて動作させるようにコードを記述します。これを行う最良の方法は何ですか?

他の例外をより高いレベルに「転送」することのみを目的として新しい例外を宣言することは、過剰ですか?

SomeException と SomeOtherException を飛び出させて、関数 x 内でキャッチすることもできると思います。しかし、読みにくいコードを補うかもしれないimo、

たとえば、関数 z でキャッチされた例外が SQLException と NoSuchAlgorithmException であり、関数 y が login() 関数である場合。次に、関数 x は login() を呼び出そうとし、SQLException をキャッチします。NoSuchAlgorithmException (これらの例外を単純に最高レベルまで飛ばす場合)、または LoginFailedException をキャッチする場合 (各例外をすぐにキャッチして新しい例外をスローさせる場合)。LoginFailedException をキャッチすると、コードが読みやすくなるようです。

どちらの方法にも短所があり (読みにくいコードと多くの例外を導入する)、経験豊富な Java プログラマーが通常、同様のケースをどのように処理するのか疑問に思っています。

例外に関する一般的な考えも感謝します

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

c# - サーバー エラーを防ぐために DateTime の try/check を使用するにはどうすればよいですか?

私はtry/catchを書こうとしていますが、明らかに失敗しています。try/catch を完全に理解しているかどうかはわかりませんが、正しい日付がフォームから送信されていることを確認するために必要なことに頭を悩ませていることは知っています。つまり、文字列ではなく DateTime 形式である必要があり、(MM/dd/yyyy) である必要があると収集しますが、この試行/チェックが原因でループが発生します。

手順: frmPersonnel コードに追加した検証コードに戻り、ロジックを含む try/catch を追加して、無効な日付が原因でサーバー エラーが発生しないようにします。

コード:

0 投票する
2 に答える
93 参照

java - これが未処理の例外と見なされるのはなぜですか?

次のコードは、未処理の例外が原因でコンパイルされませんが、問題はないように思われます。

c.drive()オーバーライドするメソッドが呼び出されたときに、チェック済み例外がスローされないことは、コンパイラにとって明らかであるべきではありませんか? 参照が Sedan 型ではなく Car 型であるという理由だけで、チェック済み例外をスローするかのように drive を扱わなければならないのはなぜでしょうか? オーバーライド メソッドはそうではありません。

0 投票する
8 に答える
10390 参照

java - チェックされた例外をラップするが、Java で元の実行時例外を保持する方法

チェック例外と実行時例外の両方をスローする可能性のあるコードがいくつかあります。

チェックされた例外をキャッチし、ランタイム例外でラップしたいと思います。ただし、RuntimeException がスローされた場合は、既にランタイム例外であるため、ラップする必要はありません。

私が持っているソリューションには少しオーバーヘッドがあり、「きれい」ではありません。

よりエレガントな方法のアイデアはありますか?