设计模式(2)-- 适配器模式(Adapter)

Posted yangchaojie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式(2)-- 适配器模式(Adapter)相关的知识,希望对你有一定的参考价值。

    适配器模式也被称为Wrapper模式,Wrapper有包装的意思,将某样东西包装起来,使其能够用于其他用途。

    Adapter模式有两种:

       类适配器模式(继承)

       对象适配器模式(委托)

    示例:

   程序员类(Adaptee被适配):

package com.adapter.demo;
//程序员类
public class Programmers {
                //  Programmers have no girlfriends
                //has GirlFriend? return true && false
                private    boolean girlFriend;

                public Programmers(boolean flag) {
                    this.girlFriend = flag;
                }
                
                public void coding() {    
                    if(!girlFriend) {
                        System.out.println("伤心的写代码");
                    }else {
                        System.out.println("愉快的写代码");
                    }
                }

    

}

 

  适配一个女朋友(Adapter):

package com.adapter.demo;

public class Girl extends Programmers implements PrintState{

    

    public Girl(boolean flag) {
        super(flag);
        // TODO Auto-generated constructor stub
    }
    
    

    @Override
    public void printState() {
        // TODO Auto-generated method stub
        coding();
    }

    
    
        
    
}

 

 需要的结果(target):

 

package com.adapter.demo;

public interface PrintState {
                
    public abstract void printState();
                
}

 

 测试:

package com.adapter.demo;

public class TestMain {
        public static void main(String[] args) {
            PrintState printState = new Girl(true);
            printState.printState();
        }
}

 

结果:

  愉快的写代码

  适配器模式可以将已测试好的类通过一个适配器类(Adapter)来生成新的方法,可以对需呀复用的方法进行复用,创建自己的方法群,同时DeBug也会变得简单,只需要根据适配器寻找相应的方法即可。  

以上是关于设计模式(2)-- 适配器模式(Adapter)的主要内容,如果未能解决你的问题,请参考以下文章

图解设计模式之Adapter模式

Adapter (适配器模式)

Java设计模式学习:2. Adapter模式

Java设计模式—适配器模式(adapter pattern)

Java 适配器(Adapter)模式

设计模式Adapter Pattern适配器模式