适配器模式:将一个类的接口装换成另一个客户期望的接口,让原本两个不同的类使用起来像是一个类。分为类的适配器和对象的适配器。
对象的适配器:使用组合的方式达到适配的效果。
public interface Target { public void run(); }
public class Dog implements Target{ @Override public void run() { System.out.println("狗狗在地上跑"); } }
public class Fish { public void swim() { System.out.println("鱼在水中游~~"); } }
public class Adpter implements Target{ private Fish fish; public Adpter(Fish fish) { this.fish = fish; } @Override public void run() { this.fish.swim(); } }
public class Test { public static void main(String args[]) { Fish fish = new Fish(); Target dog = new Adpter(fish); dog.run(); } }
类的适配器:利用继承的方式达到适配的目的。
扫描二维码关注公众号,回复:
493898 查看本文章
public interface Bird { public void fly(); }
public interface Fish { public void swim(); }
public class Goldfish implements Fish{ @Override public void swim() { System.out.println("一条小金鱼在水中游~~"); } }
public class Adpter extends Goldfish implements Bird{ @Override public void fly() { swim(); } }
public class Test { public static void main(String args[]) { Adpter adpter = new Adpter(); adpter.fly(); } }