设计模式第一篇——简单工厂模式&类图

  • Post author:
  • Post category:其他


从今天开始,小菜决定记录下来自己学习设计模式的过程,并总结每天所学内容记录在博客中。

以编写计算器程序为例,有+,-,*,/……很多种运算,因此需要if,else或switch,case进行判断,当有新的运算加入进来时改动会比较大,耦合度较大。

使用简单工厂模式:

class Operation

{

private numA;

private numB;

public void GetResult();

}

class OperationAdd/Sub/Mul/Div  extends Operation

{

public void GetResult()

{

……

class OperationFactory

{

public Operation createOperate(String operator)

Operation oper=null;

switch(operator)

{

case “+”: oper=new OperationAdd();

……

return oper;

}

}

客户端代码

{

Operation oper;

oper=OperationFactory.createOperate(“+”);

oper.setNumA(1.2); oper.setNumB(7.5);

oper.GetResult();

}

UML类图:常见类间的关系:继承;关联;聚合;合成;依赖

几种情况的类图和代码形式如下




版权声明:本文为neuandroid原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。