美文网首页设计模式
java适配器模式

java适配器模式

作者: 韭菜待收割 | 来源:发表于2018-09-18 10:46 被阅读9次

1、适配器模式的定义

适配器就是一种适配中间件,用于连接不匹配的二者,实物可以对照转接头。

2、适配器模式的分类

1)类适配器:通过继承来实现适配器功能。

//懒,就写一起了
public class MainTest {
    //测试方法
    public static void main(String[] args) {
        Adapter adapter = new Adapter();
        adapter.useRMB();
    }
    //适配器
    public static class Adapter extends YouXiBi implements IRMB{
        @Override
        public void useRMB() {
            //RMB没办法直接买装备,转换成游戏币再购买
            useYouXiBi();
        }
    }
    //RMB接口
    private interface IRMB{
        void useRMB();
    }
    //游戏币接口
    private interface IYouXiBi{
        void useYouXiBi();
    }
    //游戏币使用
    public static class YouXiBi implements IYouXiBi{
        @Override
        public void useYouXiBi() {
            System.out.println("我使用100游戏币买了一件装备");
        }
    }
}

2)对象适配器:通过组合来实现适配器功能。(可以看作类适配器)

//懒,就写一起了
public class MainTest {
    //测试方法
    public static void main(String[] args) {
        IYouXiBi iYouXiBi = new YouXiBi();
        Adapter adapter = new Adapter(iYouXiBi);
        adapter.useRMB();
    }
    //适配器
    public static class Adapter extends YouXiBi implements IRMB{
        IYouXiBi iYouXiBi;
        Adapter(IYouXiBi iYouXiBi){
            this.iYouXiBi = iYouXiBi;
        }
        @Override
        public void useRMB() {
            //RMB没办法直接买装备,转换成游戏币再购买
            iYouXiBi.useYouXiBi();
        }
    }
    //RMB接口
    private interface IRMB{
        void useRMB();
    }
    //游戏币接口
    private interface IYouXiBi{
        void useYouXiBi();
    }
    //游戏币使用
    public static class YouXiBi implements IYouXiBi{
        @Override
        public void useYouXiBi() {
            System.out.println("我使用100游戏币买了一件装备");
        }
    }
}

3)接口适配器:通过抽象类来实现适配器功能。
使用场景:想要使用接口中的某些方法,但是不想实现全部的方法,可以使用抽象类来实现接口(这个抽象类就是适配器),仅对方法进行置空,然后我们再继承这个抽象类来通过重写想用的方法的方式来实现。

//懒,就写一起了
public class MainTest {
    //测试方法
    public static void main(String[] args) {
        IYouXiBi iYouXiBi = new YouXiBi();
        iYouXiBi.useYouXiBi1();
    }
    //使用YouXiBi
    public static class YouXiBi extends Adapter{
        //游戏币买头盔
        public void useYouXiBi1(){
            System.out.println("游戏币买头盔");
        }
    }
    //游戏币接口
    private interface IYouXiBi{
        //游戏币买头盔
        public  void useYouXiBi1();
        //游戏币买腰带
        public void useYouXiBi2();
        //游戏币买上衣
        public  void useYouXiBi3();
        //游戏币买内裤
        public  void useYouXiBi4();
    }
    //适配器
    public static abstract class Adapter implements IYouXiBi{
        //游戏币买头盔
        public  void useYouXiBi1(){}
        //游戏币买腰带
        public void useYouXiBi2(){}
        //游戏币买上衣
        public  void useYouXiBi3(){}
        //游戏币买内裤
        public  void useYouXiBi4(){}
    }
}

相关文章

  • Java学习记录--适配器模式

    Java学习记录--适配器模式 标签(空格分隔): java 适配器模式是一种比较简单的设计模式,该博文从Java...

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java外观模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java适配器模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java观察者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java代理模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java策略模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • 浅析Java设计模式【1】——观察者

    前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【3】—...

  • 浅析Java设计模式【2】——适配器

    前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【3】—...

网友评论

    本文标题:java适配器模式

    本文链接:https://www.haomeiwen.com/subject/lrwynftx.html