看了一下状态设计模式之后自己写了个纯测试滚键盘的状态设计模式测试代码,感觉比我自己在网上找的代码都好理解的多,适合只想了解套路不想被附带全家桶弄得焦头烂额的同学。
用到的知识点有:继承、里氏转换原则。
class Program
{
static void Main(string[] args)
{
Work w = new Work();
w.WriteTest();
Console.WriteLine("状态转换咯");
w.SetTest(new Test02());
w.WriteTest();
Console.ReadKey();
}
}
public class Work
{
private Test test;
public Work()
{
test = new Test01();
}
public void SetTest(Test t)
{
test = t;
}
public void WriteTest()
{
test.WriteTest();
}
}
public abstract class Test
{
public abstract void WriteTest();
}
public class Test01 : Test
{
public override void WriteTest()
{
Console.WriteLine("wo shi 01010101");
}
}
public class Test02 : Test
{
public override void WriteTest()
{
Console.WriteLine("wo shi 02020202002");
}
}