这一点.与基础.对于继承的受保护的非虚方法
本文关键字:受保护 方法 继承 于继承 这一点 | 更新日期: 2023-09-27 18:11:41
在子类中,我应该将继承的受保护的非虚方法称为this.Method()
或base.Method()
吗?
使用this
可以让我很容易地用同名的新方法隐藏该方法。只有在确定只需要调用基类的实现时,才应该显式地指定base
吗?
如果你打算在子类中添加一个名为Method
的成员,并且仍然想调用继承的方法,你应该使用base.Method()
。在更多的派生类中添加名为Method
的成员不会改变this.Method()
调用的含义。
始终使用this.Method()
。
如果隐藏了该方法,则可能需要调用新方法而不是基类中的方法。另一方面,如果你让基类的方法是虚的,你可能想让你的代码以多态的方式调用它。
很难预测未来,但这些情况似乎更有可能发生。