4

これはむしろ検証です。

このような Oracle/Java チュートリアル ページでは、例外処理の機能を備えた別のステートメントであるかのように、catchのすぐ隣に「指定」が表示され続けます。

私が知っていることから、「キャッチまたは指定」の「指定」は、キャッチされて 処理されない限り、メソッド宣言でスローを伴うチェック済み例外の必須指定を指しています。場合。)

ただし、これはこれらのページのいずれにも固定されておらず、「specify」はキーワードではありませんが、あたかもキーワードのようにフォーマットされています。

ここで何か不足していますか?

4

3 に答える 3

3

私の知る限り、あなたは何も見逃していません。はspecifyメソッド宣言を意味します。おそらく、彼らはコード マークアップを使用して、両者が同等のコード アプローチであることを明確に区別したのでしょうか? 単純なミスでも構いません。

設計者が、スコープ内でスローされる可能性のあるキャッチされていないすべてのチェック済み例外をメソッドに強制的に指定することを決定したのはなぜですか? メソッドによってスローされる例外はすべて、メソッドのパブリック プログラミング インターフェイスの一部です。

チェックされていない例外 - 論争 (javadocs)

于 2013-08-31T22:40:40.940 に答える
0

彼らは単にキャッチまたは指定の要件を参照しています。等幅フォントに「指定」を入れると、フォーマットエラーが発生したようです。

于 2013-08-31T22:40:35.217 に答える
0

メソッドが例外をキャッチしないことを選択した場合、メソッドはその例外をスローできることを指定する必要があります。Java 設計者がこの要件を作成したのはなぜですか? メソッドによってスローされる可能性のある例外は、実際にはメソッドのパブリック プログラミング インターフェースの一部であるため、メソッドの呼び出し元は、メソッドがスローできる例外について知っていなければなりません。これは、これらの例外に対して何をすべきかを知的かつ意識的に決定するためです。したがって、メソッド シグネチャでは、メソッドがスローできる例外を指定します。

ここに見られるように:http://journals.ecs.soton.ac.uk/java/tutorial/java/exceptions/catchOrDeclare.html

そして、「指定」はキーワードではありません ( http://en.wikipedia.org/wiki/List_of_Java_keywords )。メソッド宣言でメソッドがスローする例外を指定することについて話しているだけです。

于 2013-08-31T22:43:46.313 に答える