0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Adapter Pattern

Last updated at Posted at 2020-11-08

#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(" >>>");}
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?