技术开发 频道

创建型模式专题总结(Creational Pattern)


    在游戏场景中,不可能只有一种墙或屋子,有可能有现代风格(Modern),古典风格(Classical)等多系列风格的部件。这时就是一系列对象的创建问题了,是一个抽象工厂的例子。解决的是“系列对象”的需求变化问题。




示例代码:

using System; public abstract class Wall { public abstract void Display(); } public class ModernWall:Wall { public override void Display() { Console.WriteLine("ModernWall Builded"); } } public class ClassicalWall:Wall { public override void Display() { Console.WriteLine("ClassicalWall Builded"); } } public abstract class Room { public abstract void Display(); } public class ModernRoom:Room { public override void Display() { Console.WriteLine("ModernRoom Builded"); } } public class ClassicalRoom:Room { public override void Display() { Console.WriteLine("ClassicalRoom Builded"); } } public abstract class AbstractFactory { public abstract Wall CreateWall(); public abstract Room CreateRoom(); } public class ModernFactory:AbstractFactory { public override Wall CreateWall() { return new ModernWall(); } public override Room CreateRoom() { return new ModernRoom(); } } public class ClassicalFactory:AbstractFactory { public override Wall CreateWall() { return new ClassicalWall(); } public override Room CreateRoom() { return new ClassicalRoom(); } }
0
相关文章