public class AdapterPattern {
public class Person {
private String name;
private String sex;
private int age;
public void speakJapanese() {
System.out.println("I can speak Japanese!");
}
public void speakEnglish() {
System.out.println("I can speak English!");
}
}
/**
* 目标接口
*/
public interface Job {
public void speakJapanese();
public void speakEnglish();
public void speakFrench();
}
/**
* 类适配器
*/
public class ClassAdapter extends Person implements Job {
public void speakFrench() {
System.out.println("I can speak French!");
}
}
/**
* 对象适配器
*/
public class ObjectAdapter implements Job {
Person person;
public ObjectAdapter(Person person) {
this.person = person;
}
public void speakEnglish() {
person.speakEnglish();
}
public void speakJapanese() {
person.speakJapanese();
}
// new add
public void speakFrench() {
System.out.println("I can speak French!");
}
}
}
设计模式之适配器模式
最新推荐文章于 2024-07-22 14:15:06 发布