new和override的区别(自我理解)

当基类中有一个方法  private virtual int xx (int a){ return a + 1}

子类中如果用new如:private new int xx (int a){ return a + 2},则可以隐藏基中的虚函数。此时如果此时调用子类中的xx(1)方法,结果为2。但此时如果在子类中其实依然可以用base.xx(1)来调用基类的xx方法

 子类中如果用override如: private override int xx (int a){ return a + 2},则基类中的xx方法被子类中新的xx方法所覆盖。

原文地址:https://www.cnblogs.com/yeagen/p/1411199.html