1

我最近阅读了一篇关于编程(C++、C#、VB)中的阴影隐藏的文章。

但我还是不明白这些是什么原因?我们为什么要这样做?我的意思是,如果我们希望它返回值,我们总是可以调用真正的函数,而不是向它强制转换一些类。

好吧,我不太擅长编程,所以我看不出原因:)

谁能解释一下?

谢谢

4

1 回答 1

1

在阴影中,子类有自己的方法版本,提供不同的实现,相同的方法在基类中也可用。

假设您有一个项目中的各种模块正在使用的类库。有一种方法正在被其他库引用。如果我们改变方法,它可能会破坏现有的功能。因此,我们使用 new 关键字隐藏/隐藏该方法。这样我们就可以在不破坏旧功能的情况下实现新功能。

编辑:
您还可以在此处的 Eric Lippert 的博客上找到一个很好的示例。

于 2015-07-30T04:03:07.277 回答