<span style="font-size:18px;">using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 简单工厂类
{
class Program
{
static void Main(string[] args)
{
// C#23种设计模式之简单工厂设计模式。
Console.WriteLine("请输入你想要的笔记本品牌:");
string strBrand = Console.ReadLine();
NoteBook nb = GetBrand(strBrand);
nb.SayHello();
Console.ReadKey();
}
// 简单工厂设计模式的核心:根据用户的输入创建对象并赋值给父类
public static NoteBook GetBrand(string strBrank)
{
NoteBook nb = null;
switch (strBrank)
{
case "Lenove":
nb = new Lenove();
break;
case "IBM":
nb = new IBM();
break;
case "Dell":
nb = new Dell();
break;
default:
break;
}
return nb;
}
}
// 使用抽象类、方法
//public abstract class NoteBook
//{
// public abstract void SayHello();
//}
// 使用虚方法
public class NoteBook
{
public virtual void SayHello()
{
Console.WriteLine("我是笔记本");
}
}
public class Dell : NoteBook
{
public override void SayHello() // 重写父类的方法
{
Console.WriteLine("我是Dell笔记本");
}
}
public class IBM : NoteBook
{
public override void SayHello()
{
Console.WriteLine("我是IBM笔记本");
}
}
public class Lenove : NoteBook
{
public override void SayHello()
{
Console.WriteLine("我是联想笔记本");
}
}
}
</span>
C#学习笔记之简单工厂设计模式
最新推荐文章于 2024-08-01 12:14:21 发布