クラス階層によるインタフェースの分離 |
クラス図を見てください。 ライブラリと実クラスのクラス階層に VisitorインタフェースとUserVisitorインタフェースが追加されています。Visitorとは訪問者という意味になります。 UserVisitorのメソッドを見てください。同じ名前のメソッドが複数宣言されています。引数の型が違うだけです。実はこのような宣言ができます。この事をメソッドの「オーバーロード」と言います。 Javaでは実行時に引数の型の違いによるメソッドの呼び出しをサポートしています。 インタフェースが分離されている理由はVisitorインタフェースから実クラスに依存関係を持たないためです。 |
---|