类模式:

  1. 创建一个接口类,定义耳机接口的标准方法。
public interface HeadphoneInterface {
    void playMusic();
}
  1. 创建两个类,分别表示3.5mm接口和2.5mm接口的耳机,实现接口类中的方法。
public class Headphone3_5mm implements HeadphoneInterface {
    @Override
    public void playMusic() {
        System.out.println("使用3.5mm接口的耳机播放音乐");
    }
}

public class Headphone2_5mm implements HeadphoneInterface {
    @Override
    public void playMusic() {
        System.out.println("使用2.5mm接口的耳机播放音乐");
    }
}
  1. 创建一个适配器类,实现接口类,将USB Type-c接口转换为3.5mm接口,实现适配器方法。
public class TypeCto3_5mmAdapter implements HeadphoneInterface {
    private TypeCHeadphone typeCHeadphone;

    public TypeCto3_5mmAdapter(TypeCHeadphone typeCHeadphone) {
        this.typeCHeadphone = typeCHeadphone;
    }

    @Override
    public void playMusic() {
        typeCHeadphone.playMusicViaTypeC();
    }
}
  1. 创建一个类,表示USB Type-c接口的耳机,实现自己的方法。
public class TypeCHeadphone {
    public void playMusicViaTypeC() {
        System.out.println("使用USB Type-c接口的耳机播放音乐");
    }
}
  1. 创建一个类,表示lighting接口的耳机,实现接口类中的方法。
public class LightingHeadphone implements HeadphoneInterface {
    @Override
    public void playMusic() {
        System.out.println("使用Lighting接口的耳机播放音乐");
    }
}
  1. 在客户端代码中,实例化各个类,将耳机接口进行转换。
public class Client {
    public static void main(String[] args) {
        HeadphoneInterface headphone1 = new Headphone3_5mm();
        headphone1.playMusic();

        HeadphoneInterface headphone2 = new Headphone2_5mm();
        headphone2.playMusic();

        TypeCHeadphone typeCHeadphone = new TypeCHeadphone();
        HeadphoneInterface headphone3 = new TypeCto3_5mmAdapter(typeCHeadphone);
        headphone3.playMusic();

        HeadphoneInterface headphone4 = new LightingHeadphone();
        headphone4.playMusic();
    }
}

对象模式:

  1. 创建一个接口类,定义耳机接口的标准方法。
public interface HeadphoneInterface {
    void playMusic();
}
  1. 创建两个类,分别表示3.5mm接口和2.5mm接口的耳机,实现接口类中的方法。
public class Headphone3_5mm implements HeadphoneInterface {
    @Override
    public void playMusic() {
        System.out.println("使用3.5mm接口的耳机播放音乐");
    }
}

public class Headphone2_5mm implements HeadphoneInterface {
    @Override
    public void playMusic() {
        System.out.println("使用2.5mm接口的耳机播放音乐");
    }
}
  1. 创建一个适配器类,实现接口类,将USB Type-c接口转换为3.5mm接口,实现适配器方法。
public class TypeCto3_5mmAdapter implements HeadphoneInterface {
    private TypeCHeadphone typeCHeadphone;

    public TypeCto3_5mmAdapter(TypeCHeadphone typeCHeadphone) {
        this.typeCHeadphone = typeCHeadphone;
    }

    @Override
    public void playMusic() {
        typeCHeadphone.playMusicViaTypeC();
    }
}
  1. 创建一个类,表示USB Type-c接口的耳机,实现自己的方法。
public class TypeCHeadphone {
    public void playMusicViaTypeC() {
        System.out.println("使用USB Type-c接口的耳机播放音乐");
    }
}
  1. 创建一个类,表示lighting接口的耳机,实现接口类中的方法。
public class LightingHeadphone implements HeadphoneInterface {
    @Override
    public void playMusic() {
        System.out.println("使用Lighting接口的耳机播放音乐");
    }
}
  1. 在客户端代码中,实例化各个类,将耳机接口进行转换。
public class Client {
    public static void main(String[] args) {
        HeadphoneInterface headphone1 = new Headphone3_5mm();
        headphone1.playMusic();

        HeadphoneInterface headphone2 = new Headphone2_5mm();
        headphone2.playMusic();

        TypeCHeadphone typeCHeadphone = new TypeCHeadphone();
        HeadphoneInterface headphone3 = new TypeCto3_5mmAdapter(typeCHeadphone);
        headphone3.playMusic();

        HeadphoneInterface headphone4 = new LightingHeadphone();
        headphone4.playMusic();
    }
}
``

原文地址: https://www.cveoy.top/t/topic/hjiS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录