微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 是否应该使用基本关键字?

从派生类调用基类的方法时,是否应该使用’base’关键字?似乎使用base关键字会增加代码的可读性,但对我来说,到目前为止,当我排除它时,对代码编译和执行没有任何影响.

解决方法

你不应该使用base,除非你明确指出“即使这个类中有一个方法覆盖了基本实现,我想调用基类实现并忽略这个类上的那个”.

使用base绕过虚拟调度机制,这种机制在多态性中非常重要,它通过引发调用指令而不是callvirt.

所以说base.Foo()在语义上非常非常不同于说这个.Foo().你几乎总是想要后者.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐