.NET 设计模式初探
工厂模式——设计模式初探
最近,正在抓紧时间看.NET的视频,期末考试结束了,整个人也散了,找不到什么正经的事情干,没事就在实验室泡着,学习一下各方各面的知识,拓展一下思路和知识,感觉不错,呵呵。
下面是在听WebCast的设计模式的视频时,实现的例子,比较简单,具体对模式的理解和应用还很需要深入……
using System; namespace CSDesignPattern { public enum UserType{Employee=0, Sales=1, Guest=2};//声明一个枚举,三种类型的用户 public class User { protected string level = "Z"; //权限级别 public string GetLevel() //得到该用户权限,默认为Z { return level; } } public class Employee : User //继承,重新设定级别 { public Employee() { level = "A"; } } public class Sales : User
{ public Sales() { level = "B"; } } public class Guest : User
{ public Guest() { level = "C"; } } public class FactoryCreator
{ public FactoryCreator(){} public static User CreateUser(UserType userType) //根据用户类型初始化不同的用户 { User u = null; switch(userType) { case UserType.Employee: u = new Employee(); break; case UserType.Sales: u = new Sales(); break; case UserType.Guest: u = new Guest(); break; }; return u; } static void Main(string[] args) { Console.WriteLine("Input Type"); UserType t = (UserType)int.Parse(Console.ReadLine()); User newUser = FactoryCreator.CreateUser(t); Console.WriteLine("Create an object:{0}" ,newUser.ToString()); Console.WriteLine("Level = {0}",newUser.GetLevel()); Console.ReadLine(); } } } 本文出自 51CTO.COM技术博客 |



august
博客统计信息
热门文章
最新评论
友情链接

