Happy 设计模式之适配器模式(JAVA)

简介:

设计模式-适配器模式


适配器模式定义

适配器模式,将一个类的的接口转换成客户或者产品希望的接口形式,就是原本不兼容或者甚至不相干的接口不能一起工作的接口一起工作,完成需求或者客户的需求。


适配器模式的使用场景

1、当你使用一个已经存在的类,而他的接口不符合你的需求。

2、你想要创建一个复用的类,该类可以与其相关的类或者不可见的类协同工作。


适配器角色

Target:目标接口

TargetImpl:目标实现类

Adapter:适配器

Adaptee:被适配者


代码解析:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package  com.design.pattern.adapter;
 
/**
  * 目标接口类
  * Created by sdc on 2017/9/3.
  */
public  interface  Target {
 
     /**
      * 处理方法
      */
     public  void  spider();
 
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package  com.design.pattern.adapter;
 
/**
  * Created by sdc on 2017/9/3.
  */
public  class  TargetImpl  implements  Target {
 
     @Override
     public  void  spider() {
         //dosomething
         System.out.println( "dosomething" );
     }
 
}
1
2
3
4
5
6
7
8
9
10
11
12
13
package  com.design.pattern.adapter;
 
/**
  * 适配者
  * Created by sdc on 2017/9/3.
  */
public  class  Adaptee {
 
     public  void  spiderFor() {
         System.out.println( "Adaptee 适配器方法" );
     }
 
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package  com.design.pattern.adapter;
 
/**
  * 被适配者3
  * Created by sdc on 2017/9/3.
  */
public  class  Adapteer  implements  Target {
 
     //适配者
     private  Adaptee adaptee =  new  Adaptee();
 
     @Override
     public  void  spider() {
         adaptee.spiderFor();
     }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package  com.design.pattern.adapter;
 
/**
  * Created by sdc on 2017/9/3.
  */
public  class  Main {
 
     public  static  void  main(String[] args) {
        Target adapteer =   new  Adapteer();
        adapteer.spider();
 
        Target target1 =  new  TargetImpl();
        target1.spider();
     }
 
}


这样一个简单的设计模式完成了。有的时候项目里,有很多重复的代码,每天都会新建重复的代码,尝试着把代码抽取出来,或者可以用一些实际模式做出一些简单的设计,或许有不一样的效果。


本文转自 豆芽菜橙 51CTO博客,原文链接:http://blog.51cto.com/shangdc/1962321

相关文章
|
2天前
|
设计模式 Java
【JAVA基础篇教学】第十四篇:Java中设计模式
【JAVA基础篇教学】第十四篇:Java中设计模式
|
3天前
|
设计模式 算法 Java
设计模式在Java开发中的应用
设计模式在Java开发中的应用
15 0
|
10天前
|
设计模式 前端开发 Java
19:Web开发模式与MVC设计模式-Java Web
19:Web开发模式与MVC设计模式-Java Web
20 4
|
10天前
|
设计模式 存储 前端开发
18:JavaBean简介及其在表单处理与DAO设计模式中的应用-Java Web
18:JavaBean简介及其在表单处理与DAO设计模式中的应用-Java Web
25 4
|
10天前
|
设计模式 缓存 监控
JAVA设计模式之结构型模式
结构模型:适配器模型、桥接模型、过滤器模型、组合模型、装饰器模型、外观模型、享受元模型和代理模型。
21 3
|
14天前
|
设计模式 算法 Java
Java基础教程(19)-设计模式简述
【4月更文挑战第19天】设计模式是软件设计中反复使用的代码设计经验,旨在提升代码的可重用性、可扩展性和可维护性。23种模式分为创建型、结构型和行为型三类。创建型模式如工厂方法、抽象工厂、建造者、原型和单例,关注对象创建与使用的分离。结构型模式涉及对象组合,如适配器、装饰器、外观等,增强结构灵活性。行为型模式专注于对象间职责分配和算法合作,包括责任链、命令、观察者等。设计模式提供标准化解决方案,促进代码交流和复用。
|
14天前
|
设计模式 Java
Java 设计模式:混合、装饰器与组合的编程实践
【4月更文挑战第27天】在面向对象编程中,混合(Mixins)、装饰器(Decorators)和组合(Composition)是三种强大的设计模式,用于增强和扩展类的功能。
21 1
|
1月前
|
设计模式 SQL 算法
设计模式了解哪些,模版模式
设计模式了解哪些,模版模式
22 0
|
2月前
|
设计模式 Java uml
C++设计模式之 依赖注入模式探索
C++设计模式之 依赖注入模式探索
56 0
|
1月前
|
设计模式 Java 数据库
小谈设计模式(2)—简单工厂模式
小谈设计模式(2)—简单工厂模式