首页 > 代码库 > 设计模式:缺省适配器模式
设计模式:缺省适配器模式
原创:http://leihuang.org/2014/12/06/default-adapter/
Structural 模式 如何设计物件之间的静态结构,如何完成物件之间的继承、实 现与依赖关系,这关乎着系统设计出来是否健壮(robust):像是易懂、易维护、易修改、耦合度低等等议题。Structural 模式正如其名,其分类下的模式给出了在不同场合下所适用的各种物件关系结构。
- Default Adapter 模式
- Adapter 模式
- Bridge 模式
- Composite 模式
- Decorator 模式
- Facade 模式
- Flyweight 模式
- Proxy 模式
很多情况下,一个具体类去实现一个接口,但是又不是需要实现接口中所有的方法,只需要部分方法,但是实现接口的时候,强制实现了所有的方法,这样就导致了这个具体类含有许多空方法.这是一种浪费,也会导致混乱,所以就产生了缺省适配器模式.
下面我们定义一个人接口(IPerson)
public interface IPerson{ String getName() ; void goToSchool() ; void work() ; void eat() ; }
当需要一个学生的具体类时,我们会发现,如果继承IPerson接口的话,那么work()这个方法就必须空着,所以这里我们先定义一个抽象的缺省适配器类实现IPerson接口.
public abstract class PersonAdapter{ public String getName(){} ; public void goToSchool(){} ; public void work(){} ; public void eat() ; }
接下来我们再实现我们具体的学生类(Student)
public class Student extends PersonAdapter{ private String name = null ; public Student(String name){ this.name = name ; } public String getName(){ return name ; } public void goToSchool(){ System.out.println("go to school !") ; } public void eat(){ System.out.println("eating") ; } }
下面是类结构图
2014-12-06 20:14:29
Brave,Happy,Thanksgiving !
设计模式:缺省适配器模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。