抽象工厂模式

抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。

抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式。
抽象工厂模式可以向客户端提供一个接口,使客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象。

using System;

using System.Reflection;

namespace MyApp

{

class Program

{

static void Main()

{

Operator theOperator = Factory.CreateOperatorInstance("PlusOperator");

theOperator.FirstNumber = 1;

theOperator.SecondNumber = 1;

Console.WriteLine("1+1={0}", theOperator.GetResult());

Console.WriteLine();

theOperator = Factory.CreateOperatorInstance("SubtractOperator");

theOperator.FirstNumber = 1;

theOperator.SecondNumber = 1;

Console.WriteLine("1-1={0}", theOperator.GetResult());

Console.ReadKey();

}

}

abstract class Operator

{

public double FirstNumber { get; set; }

public double SecondNumber { get; set; }

public abstract double GetResult();

}

class PlusOperator:Operator

{

public override double GetResult()

{

return FirstNumber + SecondNumber;

}

}

class SubtractOperator : Operator

{

public override double GetResult()

{

return FirstNumber - SecondNumber;

}

}

class Factory

{

public static Operator CreateOperatorInstance(string objectName)

{

return (Operator)Assembly.Load("MyApp").CreateInstance(string.Format("MyApp.{0}",objectName));

}

}

}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值