为了账号安全,请及时绑定邮箱和手机立即绑定

新建和覆盖之间的差异

新建和覆盖之间的差异

C#
慕沐林林 2019-07-02 09:45:06
新建和覆盖之间的差异想知道以下几点之间有什么区别:案例1:基类public void DoIt();案例1:继承类public new void DoIt();案例2:基类public virtual void DoIt();案例2:继承类public override void DoIt();根据我所运行的测试,情况1和2似乎都有相同的效果。有什么不同,还是首选的方法?
查看完整描述

3 回答

?
MM们

TA贡献1886条经验 获得超2个赞

在第一种情况下,您将定义隐藏在父类中。这意味着只有在将对象作为子类处理时才会调用它。如果将类强制转换为父类型,则将调用父类的方法。在第二个实例中,不管对象是作为子类还是父类进行强制转换,方法都会被重写并被调用。


查看完整回答
反对 回复 2019-07-02
  • 3 回答
  • 0 关注
  • 386 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信