#Adapter Pattern
あるクラスのメソッドを再利用する
再利用されるクラスを修正したりはしない
Adapter Patternは以下の2つの方法があります
・再利用されるクラスをextendsしたクラスを利用する
・再利用されるクラスをインスタンス化して利用する
Design Pattarm MENU
##再利用されるクラスをextends
以下のクラス構成で確認します
クラス | 説明 |
---|---|
sam.class | 再利用されるクラス |
adapt.class | sam.classのsam()を、adapt.classのexec()でラップして再利用する |
user(Main.class) | Adapter Patternを使う |
*user 他の開発者がこのパターンを利用する、という意味合いを含みます |
sam.class
class sam {
void sam(){System.out.print("base");}
}
adapt.class
class adapt extends sam{
void exec(){
System.out.print("<<< "); // A
sam(); // sam.classのsam()メソッド
System.out.println(" >>>");} // A
} // Aでsam()をラップしてます
user(Main.class)
public static void main(String[] args){
adapt ad= new adapt();
ad.exec();
}}
##再利用されるクラスをインスタンス化
構成は上記と同じで、adapt.classを変更します
adapt.class
class adapt extends sam{
sam s=new sam();
void exec(){
System.out.print("<<< ");
s.sam();
System.out.println(" >>>");}
}