1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| using System; using System.Collections.Generic; using System.Text;
namespace ConsoleApplication1 { abstract class Expretion { public void Translate(Words w) { string s = w.MyWords.Substring(0, 1); w.MyWords = w.MyWords.Substring(2); Excute(s); }
public abstract void Excute(string s); }
class EnglishExpretion : Expretion { public override void Excute(string s) { switch (s) { case "e": Console.WriteLine("对方说的英语"); break; } } }
class GermanExpretion : Expretion { public override void Excute(string s) { switch (s) { case "g": Console.WriteLine("对方说的德语"); break; } } }
class Words { private string words;
public string MyWords { get { return words; } set { words = value; } } }
class Client { public static void Main() { Words w = new Words(); w.MyWords = "e g e e g "; Expretion e = null; while (w.MyWords.Length > 0) { switch (w.MyWords.Substring(0, 1)) { case "e": e = new EnglishExpretion(); break; case "g": e = new GermanExpretion(); break; }
e.Translate(w); }
Console.Read(); } } }
|