首页/ 第 17 章 · 发布与进阶修炼/ 第 290 课
LESSON 290 · 发布与进阶修炼

进阶修炼:面向对象编程

面向对象进阶完成。下一课学设计模式。

⏱ 约 15 分钟📊 难度:入门🗂 第 17 章 · 发布与进阶修炼📍 第 290 / 300 课
课程进度
290 / 300

🎯本节学习目标

  • 掌握面向对象特性
  • 掌握多态与接口
  • 掌握设计原则

🚀课程导读

“代码像搭积木”——面向对象是专业开发的地基。本课把 OOP 用到 Unity。

OOP 四特性

封装继承多态抽象。

  1. 【类与对象】类=蓝图、对象=实例(第 51 课)。
  2. 【封装】数据 + 方法打包,外部通过方法访问:
  3. public class Player { private int hp; public int Hp => hp; public void TakeDamage(int d) { hp -= d; } }
  4. 【继承】子类复用父类:
  5. public class Enemy : Character { } // 继承血量/移动
  6. 【多态】同一方法不同实现:
  7. public virtual void Attack() { }
  8. public class Warrior : Character { public override void Attack() { /* 近战 */ } }
  9. 【抽象】定义规范不管实现:
  10. public abstract class Weapon { public abstract void Use(); }
  11. 【Unity 应用】所有脚本都是 MonoBehaviour(继承);角色/敌人继承公共基类。
  12. 【完成】OOP“懂了”。
  13. 【注意】继承别“过深”(多层继承难维护)。
💡
OOP 记忆:封装(藏数据)、继承(复用)、多态(同一套接口不同行为)。

接口与设计原则

“面向接口”。

  1. 【接口】规范一组能力:
  2. public interface IAttackable { void TakeDamage(int d); }
  3. public interface IInteractable { void OnInteract(); }
  4. 【用接口】敌人/玩家/机关实现 IAttackable,伤害系统统一调用(第 248 课)。
  5. 【SOLID 原则】(简版)
  6. S 单一职责:一个类一件事。
  7. O 开闭原则:对扩展开放、对修改关闭(加功能用新类)。
  8. L 里氏替换:子类能替换父类。
  9. I 接口隔离:接口别太“大”。
  10. D 依赖倒置:面向抽象不面向具体。
  11. 【实践】把“伤害逻辑”做成接口:新敌人实现即可被攻击。
  12. 【完成】“工程思维”有了!
  13. 【推荐】初学记住 S(单一职责)+ O(开闭)就领先很多。
设计心法:接口定“能力”、类实现“能力”、调用方只看接口。解耦三件套。

常见错误与排查

错误:继承还是接口?
原因:概念混淆
解决:“是什么”用继承(敌人是角色);“能干什么”用接口(能被攻击)。

动手练习

课后小任务(做出来才算真的学会)

  • 把角色/敌人用继承重构
  • 定义接口并让多类实现
  • 体会单一职责原则

本节小结

面向对象进阶完成。下一课学设计模式。

完成打卡后,主站会实时更新你的学习进度 🎯

← 上一课游戏上线与运营基础