标签:
1 //Man 2 abstract public class Man 3 { 4 public abstract void Show(); 5 } 6 //SmartMan 7 class SmartMan:Man 8 { 9 public override void Show() 10 { 11 // base.Show(); 12 Console.WriteLine("这是一个帅哥"); 13 } 14 } 15 //PoorMan 16 class PoorMan:Man 17 { 18 public override void Show() 19 { 20 // throw new NotImplementedException(); 21 Console.WriteLine("这是一个三无青年,请不要选择"); 22 } 23 } 24 //MoneyMan 25 class MoneyMan:Man 26 { 27 public override void Show() 28 { 29 //base.Show(); 30 Console.WriteLine("这是一个富豪"); 31 } 32 } 33 //HighMan 34 class HighMan:Man 35 { 36 public override void Show() 37 { 38 //base.Show(); 39 Console.WriteLine("这是一个高大的男生"); 40 } 41 } 42 //ManFactory 43 class ManFactory 44 { 45 public static Man CreateManOperation(string strCondition) 46 { 47 Man mTemp = null; 48 switch (strCondition) 49 { 50 case "high": 51 mTemp = new HighMan(); 52 break; 53 case "money": 54 mTemp = new MoneyMan(); 55 break; 56 case "smart": 57 mTemp = new SmartMan(); 58 break; 59 case "poor": 60 mTemp = new PoorMan(); 61 break; 62 63 default: 64 break; 65 } 66 return mTemp; 67 } 68 } 69 //client 70 class Program 71 { 72 static void Main(string[] args) 73 { 74 string strCondition = Console.ReadLine(); 75 do 76 { 77 78 Man m_man = ManFactory.CreateManOperation(strCondition); 79 m_man.Show(); 80 strCondition = Console.ReadLine(); 81 } while (!string.IsNullOrEmpty(strCondition)); 82 83 Console.ReadLine(); 84 } 85 }
结果如图:
标签:
原文地址:http://www.cnblogs.com/billly/p/5487664.html