C# 与用C编写的多态性相混淆#

C# 与用C编写的多态性相混淆#,c#,class,inheritance,polymorphism,C#,Class,Inheritance,Polymorphism,嗨,我的同事刚刚告诉我,通过隐藏一个基类方法并在派生类中实现另一个具有相同签名的方法,可以实现多态性,这是真的吗?在现实生活中,这怎么可能需要呢?我猜你的朋友说的是隐藏。这不是真正的多态性,应该避免这几乎是反多态性。对于多态性,无论变量的类型如何,只要调用对象的“real”方法,就应该执行该方法;如果所讨论的对象是派生类型的,则无论对类型为base或类型为derived的变量调用派生.Method(),都需要调用它 隐藏打破了这一期望。MSDN上的C#编程指南对多态性及其用途进行了详细介绍,包括

嗨,我的同事刚刚告诉我,通过隐藏一个基类方法并在派生类中实现另一个具有相同签名的方法,可以实现多态性,这是真的吗?在现实生活中,这怎么可能需要呢?

我猜你的朋友说的是隐藏。这不是真正的多态性,应该避免

这几乎是反多态性。对于多态性,无论变量的类型如何,只要调用对象的“real”方法,就应该执行该方法;如果所讨论的对象是派生类型的,则无论对类型为base或类型为derived的变量调用派生.Method(),都需要调用它


隐藏打破了这一期望。

MSDN上的C#编程指南对多态性及其用途进行了详细介绍,包括隐藏基类成员和新成员以及其他主题。我不确定还有什么不清楚。很明显,这个问题是关于C#的隐藏“特性”和实际多态性的混淆,下面有一个问题解决了这个混淆。隐藏只是C#称之为隐藏的VB单词。@empi,感谢它帮助我的链接好友@亨克奥尔特曼-谢谢,我不知道。阴影效果听起来好多了。+1对于信息丰富的答案,谢谢:)