プロが教える店舗&オフィスのセキュリティ対策術

マニアックな質問なのかもしれませんが・・

インターフェイス及び抽象メソッドの定義は
●インターフェイスに定義されているメソッドは必ず抽象メソッドである
●抽象メソッドにはメソッドのプロトタイプだけが定義されている
だと思うのですが、
RequestDispatcherインターフェイスのforwardメソッドには既に
「サーブレットから他のリソースへ、requestオブジェクトとresponseオブジェクトを転送する」
という処理内容が定義されているように思います。>java.sun.comのapiドキュメント

これってインターフェイスの原則から外れていると思うのですが、
どうなのでしょうか。「例外」もあるってことなんでしょうか。
おひまだったら解答をお願いいたします。

A 回答 (1件)

別に RequestDispatcher に限らないでしょう。

例えば、J2SE で Iterator の
next() の説明から引用すると、

J2SE> 繰り返し処理で次の要素を返します。

とあります。

インターフェースの説明は「××をする」と書いてあれば、そのインターフェースを
実装するクラスで「××をする *ように実装しなさい* 」と書いてあるのだ、という
ふうに読むべきです。

たまたま RequestDispatcher は、自分で実装することが無い(サーブレットコンテナ
を提供する人が実装する)から、質問にあるように読めてしまうんですよね。
    • good
    • 0
この回答へのお礼

理解しました。

お礼日時:2001/11/22 16:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!