書かなければならないインターフェースに問題があります。私たちの会社のプロジェクトには、logIn、reporting、addNote などの Web メソッドを提供する 1 つのクラスがあります。すべてのメソッドは、誰か (おそらくこのクラスを書いたのと同じ人) によって書かれた例外をスローします。ここで、このクラスの "同等" を (Web サービスを使用して) 作成し、両方のクラスのインターフェイスを作成する必要があります。しかし、私のクラスは例外をスローしません (署名に例外のスローを記述していません。この例外を処理するために try-catch ブロックを使用しました)。両方のクラスのインターフェイスを作成する簡単な方法はありますか (その例外のために署名が異なります)。または、この最初のクラスを書き直して、try-catch ブロックを使用する (またはクラスを変更する) 必要があります。こんな事態は避けたい…
質問する
124 次
4 に答える
0
インターフェイスで宣言されたメソッドをオーバーライドして、同じ例外または派生型 Exception をスローすることしかできません。つまり、例外をスローしないようにメソッドを実装することはできませんが、インターフェイスでは、メソッドは特定の例外をスローするように記述されています.
于 2013-04-29T14:54:42.900 に答える
0
具体的な実装の 1 つが例外をスローし、もう 1 つがそれをキャッチした場合、残念ながら同じインターフェイスを使用することはできません。例外はメソッド定義の一部であり、2 つのメソッドが異なる方法で例外を処理する場合、それらは同じではありません。したがって、クラスの 1 つを変更する必要があります。
于 2013-04-29T14:46:17.600 に答える