设计模式
来源:互联网 发布:安卓限速软件 编辑:程序博客网 时间:2024/06/11 19:54
整理《大话设计模式》,力图代码简单明了,结构一目了然:
工厂方法-计算器
namespace 工厂方法_计算器
{
class Operation // 运算类
{
private double _numberA = 0;
private double _numberB = 0;
public double NumberA { get { return _numberA; } set { _numberA = value; } }
public double NumberB { get { return _numberB; } set { _numberB = value; } }
public virtual double GetResult() { return 0; } // 得到运算结果
}
class OperationAdd : Operation { public override double GetResult() { return NumberA + NumberB; } } // +法类
class OperationSub : Operation { public override double GetResult() { return NumberA - NumberB; } } // -法类
class OperationMul : Operation { public override double GetResult() { return NumberA * NumberB; } } // *法类
class OperationDiv : Operation { public override double GetResult() { if (NumberB == 0) throw new Exception("除数不能为0"); // /法类
return NumberA / NumberB; } }
interface IFactory { Operation CreateOperation(); } // 工厂方法(接口)
class FactoryAdd : IFactory { public Operation CreateOperation() { return new OperationAdd(); } } // 专门负责生产 + 的工厂
class FactorySub : IFactory { public Operation CreateOperation() { return new OperationSub(); } } // -
class FactoryMul : IFactory { public Operation CreateOperation() { return new OperationMul(); } } // *
class FactoryDiv : IFactory { public Operation CreateOperation() { return new OperationDiv(); } } // /
// Main: IFactory operFactory = new FactoryAdd();
// Operation oper = operFactory.CreateOperation();
// oper.NumberA = 1;
// oper.NumberB = 2;
// double result = oper.GetResult();
}
(阿秋哥 20170714)
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式~~~~~~~~~~
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- Django学习笔记7-编写第一个视图
- 小程序代码开发
- undefined definition reference to XXX
- 修改oracle数据库 db_name,instace_name,sid_name
- unity MD5/AES加密
- 设计模式
- 坑死的80和8080端口
- linux 防火墙添加对外开放端口
- Sublime Text 3 调教你的私人利器
- 日常(夏日装扮。。。)
- centos 安装配置 snmp
- SpringBoot文件上传大小设置问题
- VC ScreenToClient与ClientToScreen
- UVA