赞
踩
适配器模式(Adapter)包含以下主要角色。
类适配器模式的结构图如图 1 所示。
对象适配器模式的结构图如图 2 所示。
1.目标接口
- package java设计模式.适配器模式.类适配器;
-
- public interface Target {
-
- public void request();
- }
2.适配者编写
- package java设计模式.适配器模式.对象适配器;
-
- public class Adaptee {
-
- public void specificRequest(){
- System.out.println("对象适配者被调用");
- }
- }
3.适配器编写
- package java设计模式.适配器模式.对象适配器;
-
- public class Adaptee {
-
- public void specificRequest(){
- System.out.println("对象适配者被调用");
- }
- }
4.测试类client
- package java设计模式.适配器模式.类适配器;
-
- public class Client {
-
- public static void main(String[] args) {
- Target target = new ClassAdapter();
- target.request();
- }
- }
1.目标接口
- package java设计模式.适配器模式.对象适配器;
-
- public interface Target {
-
- public void request();
- }
2.适配者
- package java设计模式.适配器模式.对象适配器;
-
- public class Adaptee {
-
- public void specificRequest(){
- System.out.println("对象适配者被调用");
- }
- }
3.适配器
- package java设计模式.适配器模式.对象适配器;
-
- public class ObjectAdapter implements Target{
-
- private Adaptee adaptee;
-
- public ObjectAdapter(Adaptee adaptee) {
- this.adaptee = adaptee;
- }
-
- @Override
- public void request() {
- System.out.println("对象适配器被调用");
- adaptee.specificRequest();
- }
- }
4.测试类client
- package java设计模式.适配器模式.对象适配器;
-
- public class Clinet {
-
- public static void main(String[] args) {
- Adaptee adaptee = new Adaptee();
- Target target = new ObjectAdapter(adaptee);
- target.request();
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。