博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【C#】简单工厂模式
阅读量:4087 次
发布时间:2019-05-25

本文共 1623 字,大约阅读时间需要 5 分钟。

using System;// 可维护,可复用,可扩展,灵活性好namespace 简单工厂模式{	// 运算类	public class Operation	{		private double numberA = 0;		public double NumberA {			get {				return numberA;			}			set {				numberA = value;			}		}		private double numberB = 0;		public double NumberB {			get {				return numberB;			}			set {				numberB = value;			}		}		public virtual double GetResult()		{			double testResult = 0;			return testResult;		}	}	// 加法	class OperationAdd:Operation	{		public override double GetResult ()		{			double addResult = 0;			addResult = NumberA + NumberB;			return addResult;		}	}	// 减法	class OperationSub :Operation	{	public override double GetResult ()		{			double subResult = 0;			subResult = NumberA - NumberB;			return subResult;		}	}	// 乘法	class OperationMul :Operation	{	public override double GetResult ()		{			double mulResult = 0;			mulResult = NumberA * NumberB;			return mulResult;		}	}	// 除法	class OperationDiv :Operation	{	public override double GetResult ()		{			double divResult = 0;			divResult = NumberA / NumberB;			return divResult;		}	}	public class OperationFactory	{		public static Operation createOperate(string operate)		{			Operation oper = null;			switch (operate) {			case "+" :			oper = new OperationAdd();			break;			case "-":			oper = new OperationSub();			break;			case "*":			oper = new OperationMul();			break;			case "/":			oper = new OperationDiv();			break;			}			return oper;		}	}	class MainClass	{		public static void Main (string[] args)		{						Operation oper;			oper = OperationFactory.createOperate("/");			oper.NumberA = 12;			oper.NumberB = 2;			Console.WriteLine (oper.GetResult());		}	}}

转载地址:http://xukii.baihongyu.com/

你可能感兴趣的文章
通过试题理解JavaScript
查看>>
webpack的面试题总结
查看>>
实践这一次,彻底搞懂浏览器缓存机制
查看>>
Koa2教程(常用中间件篇)
查看>>
React Hooks 完全指南
查看>>
React16常用api解析以及原理剖析
查看>>
教你发布你npm包
查看>>
nvm 和 nrm 的安装与使用
查看>>
React Hooks 一步到位
查看>>
React Redux常见问题总结
查看>>
前端 DSL 实践指南
查看>>
ReactNative: 自定义ReactNative API组件
查看>>
cookie
查看>>
总结vue知识体系之实用技巧
查看>>
PM2 入门
查看>>
掌握 TS 这些工具类型,让你开发事半功倍
查看>>
前端如何搭建一个成熟的脚手架
查看>>
Flutter ListView如何添加HeaderView和FooterView
查看>>
Flutter key
查看>>
Flutter 组件通信(父子、兄弟)
查看>>