C#语言规范说,如果我继承了一个类,并且基类和派生类具有相同的命名成员和相同的签名,那么我必须使用new关键字来隐藏基类成员(还有一种方法是在基类和派生类成员中使用virtual和override关键字)。但在实践中我发现,如果派生类具有相同的命名成员,则派生类会自动隐藏派生成员。那么同名派生类成员中的新关键字的主要好处和问题是什么? 最佳答案 如您所述,不需要新的。它是可选的,如果您不使用它,您会收到警告。乍一看这是一个奇怪的设计决定,您是完全正确的。此设计决策的目的是帮助缓解称为“脆弱基类”问题的一类问题。这是该问题的一个版本: