什么是真正的实际使用'new' modifier的?成员隐藏,什么是它的实际用途
public class Base
{
public void Say()
{
Console.WriteLine("Base");
}
}
public class Derived:Base
{
public new void Say()
{
Console.WriteLine("Derived");
}
}
如果这只是不能编译,它会更好吗?此代码:
Derived d = new Derived();
d.Say();
((Base)d).Say();
返回
Derived
Base
这是否打破了里氏替换原则?
干杯。
法律可以被打破或弯曲时,他们满足现实世界 - http://en.wikipedia.org/wiki/Circle-ellipse_problem – Kami