一、C# 声明对象,内存图

  1. 声明父New父(声明父类型引用指向父类型对象)
    Unity OOP(重写、隐藏、脚本生命周期冲突问题)
  2. 声明子New子(声明子类型引用指向子类型对象)
    Unity OOP(重写、隐藏、脚本生命周期冲突问题)
  3. 声明父New子(声明父类型引用指向子类型对象)
    Unity OOP(重写、隐藏、脚本生命周期冲突问题)
    总结:能点出什么取决于什么类型的引用。

二、重写、隐藏原理图

  1. 重写动态绑定(运行时决定,效率会低一点灵活)
  2. 隐藏静态绑定(编译时就已经定好了,高效率不灵活)
    Unity OOP(重写、隐藏、脚本生命周期冲突问题)
    总结:重写父类的方法后调用父类就是直接调用重写后的方法。

三、脚本声明周期冲突问题(通过隐藏技术解决)

  1. 父类Start方法执行,子类继承父类如果子类中也想使用Start方法,那么直接隐藏父类Start方法,在子类Start中通过Base关键字进行调用父类。

相关文章: