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

设计模式-适配器模式

作者: ShenHehe | 来源:发表于2018-03-21 11:29 被阅读0次

1. 类适配器模式

目标角色,这里假如规定了可以播放视频的格式

public interface PlayerFormat {
    public void playerMP4();
    public void playerAVI();
    public void playerRMVB();
}

当前的播放器只能播放MP4格式的视频

public class Player {
    public void playerMP4() {
        System.out.println("播放MP4视频");
    };
}

使用适配器继承了Player,又实现了PlayerFormat的接口,现在这个视频器就能播放MP4、AVI、RMVB三种格式的视频了

public class PlayerAdapter extends Player implements PlayerFormat{

    @Override
    public void playerAVI() {
        System.out.println("播放AVI视频");
    }

    @Override
    public void playerRMVB() {
        System.out.println("播放RMVB视频");
    }

}

测试

PlayerAdapter player = new PlayerAdapter();
player.playerMP4();
player.playerAVI();
player.playerRMVB();

输出

播放MP4视频
播放AVI视频
播放RMVB视频

2. 对象适配器模式

对象适配器模式与类适配器就adapter不同,具体如下代码

public class PlayerAdapter2 implements PlayerFormat{
    private Player player;
    
    public PlayerAdapter2(Player player) {
        super();
        this.player = player;
    }

    @Override
    public void playerMP4() {
        player.playerMP4();
    }

    @Override
    public void playerAVI() {
        System.out.println("播放AVI视频");
    }

    @Override
    public void playerRMVB() {
        System.out.println("播放RMVB视频");
    }

}

测试

PlayerAdapter2 player = new PlayerAdapter2(new Player());
player.playerMP4();
player.playerAVI();
player.playerRMVB();

输出

播放MP4视频
播放AVI视频
播放RMVB视频

相关文章

  • 简说设计模式之适配器模式

    前言:对于设计模式基础概念可以去看[简说设计模式之设计模式概述] 一、什么是适配器模式 适配器模式(Adapter...

  • 设计模式 - 目录

    设计模式01 - 单例模式 设计模式02 - 工厂模式 设计模式03 - 建造者模式 设计模式04 - 适配器模式...

  • 最常用的设计模式---适配器模式(C++实现)

    适配器模式属于结构型的设计模式,它是结构型设计模式之首(用的最多的结构型设计模式)。 适配器设计模式也并不复杂,适...

  • iOS设计模式(5)策略模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(6)模板模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(7)建造者模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(4)抽象工厂模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(1)简单工厂模式

    设计模式系列文章 《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器模式》《iOS设计模式(4)抽象工厂...

  • iOS设计模式(2)工厂模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(3)适配器模式》《iOS设计模式(4)抽象...

  • iOS设计模式(8)外观模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

网友评论

      本文标题:设计模式-适配器模式

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