C#继承之里氏替换原则分析

 更新时间:2025年05月21日 15:24:06   作者:虚芷望空  
这篇文章主要介绍了C#继承之里氏替换原则,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

C#里氏替换原则

一.概念

里氏替换原则是面向对象设计的基本原则之一:

  • 核心思想:所有引用基类的地方必须能够透明地使用其子类的对象。即子类对象可以替换基类对象而不影响程序的正确性。
  • 表现:父类容器可以装载子类对象,但子类容器不能装载父类对象。

二.语法表现

//父类容器装载子类对象
// Player和Monster 是GameObject的子类
GameObject player=new Player();
GameObject monster=new Monster();

//子类容器不能装载父类对象

//Player p=new GameObject();

三.类型检查与转换

C# 提供了isas操作符来处理类型检查和转换。

if(player is Player)
{

  (player as Player).PlayerAtk();

}
  • is用于检查对象是否属于特定类型
  • as用于安全转换,和强转来相比,更加安全,as转换失败时会返回null。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论