抽象类编程案例
- 使用抽象类结构实现 NPC 模块
- 在游戏中会出现很多种不同用途的 NPC,这些 NPC有各自的存在价值和作用,同时又具备一些共性的东西。在开发 NPC 系统时,往往需要提取共性,独立出一个父类,然后子类继承父类,实现不同作用的 NPC。
- 分析
- 任务 NPC,商贩 NPC,铁匠 NPC,三种 NPC 的种类。
- 共有属性:NPC 的名字,NPC 的类型。
- 共有方法:都能和玩家交互(交谈)。
//1.创建父类NPC.cs enum NPCType { Task, Shop } abstract class NPC { private string name; private NPCType type; public string Name { get { return name; } set { name = value; } } public NPCType Type { get { return type; } set { type = value; } } public NPC(string name, NPCType type) { this.name = name; this.type = type; } public abst