Java软件设计模式------装饰设计模式

Java软件设计模式一共分为23种;

一般常用的有:

  单例设计模式

  装饰设计模式

  工厂设计模式

 

装饰设计模式

定义:英文叫Decorator Pattern,又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。

在生活中我们用程序员和项目经理的例子来比喻,项目经理是从程序员开始的,经过不断地积累工作经验、不断的学习新的知识,才有可能升职。

在装饰设计模式中项目经理就是程序员的增强。

程序猿:
  写程序
项目经理
  调研需求
  写程序
  项目管理

1.新建一个程序员类

/**
* 程序员
* @author Administrator
*/
public class Programmaer {
public void code(){
System.out.println("写代码..");
}
}

2.创建一个项目经理类(项目经理是在程序员基础上增加新的工作方法)

/**
* 项目经理
* @author Administrator
*/
public class ProgramerMannerger {
private Programmaer p;
//构造方法 参数为程序员的引用
public ProgramerMannerger(Programmaer pr){
this.p=pr;
}
//项目经理工作的方法
public void work(){
System.out.println("调研需求");
p.code(); //程序员的方法
System.out.println("项目管理");

}
}

3.创建一个Test类:

/**
* 在程序员基础上加功能,用包装设计模式加功能
* @author Administrator
*/
public class Test2 {
public static void main(String[] args) {
//程序员
Programmaer p=new Programmaer();
//项目经理
ProgramerMannerger pm=new ProgramerMannerger(p);
pm.work();
}
}

结论:当一个程序完成以后,怎样增加功能,又不用大范围的修改代码?就可以使用装饰设计模式。

posted @ 2017-05-07 21:31  波光闪烁  阅读(330)  评论(0编辑  收藏  举报