C# 简单工厂模式
C# 简单工厂模式
通过工厂先生产笔记本(抽象类),根据用户需要的品牌(具体类),给用户品牌笔记本。
using System;
namespace 简单工厂设计模式
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入你需要的笔记本:");//提示
string nBook = Console.ReadLine();//接收用户输入的值
NoteBook nb = GetNoteBook(nBook);//调用GetNoteBook方法 接收返回值。
nb.Say();//调用方法
Console.ReadKey();//按任意键
}
static NoteBook GetNoteBook(string nBook)//方法
{
NoteBook N = null;//声明NoteBook变量
switch (nBook)//判断传过来的值 与哪项匹配
{
case "Dell":
N = new Dell();
break;
case "Acer":
N = new Acer();
break;
case "IBM":
N = new IBM();
break;
}
return N;//返回
}
}
abstract class NoteBook//抽象类。笔记本
{
public abstract void Say();//抽象方法
}
class Dell : NoteBook//笔记本品牌,继承笔记本
{
public override void Say()//重写方法
{
Console.WriteLine("戴尔笔记本。");
}
}
class Acer : NoteBook//笔记本品牌,继承笔记本
{
public override void Say()
{
Console.WriteLine("宏碁笔记本.");
}
}
class IBM : NoteBook//笔记本品牌,继承笔记本
{
public override void Say()
{
Console.WriteLine("IBM笔记本");
}
}
}输出结果:
