是指在派生类中隐藏了基类中的同名属性,并且在派生类中无法直接访问基类中的隐藏属性。在C#中,当派生类中定义了与基类中同名的属性时,基类中的属性会被隐藏起来,无法通过派生类的实例直接访问。
然而,可以通过基类的引用来访问隐藏属性。通过将派生类的实例赋给基类的引用变量,然后通过该引用变量来访问基类中的隐藏属性。
以下是一个示例代码:
class BaseClass
{
public string Name { get; set; }
}
class DerivedClass : BaseClass
{
private new string Name { get; set; } // 隐藏基类的同名属性
public void AccessHiddenProperty()
{
BaseClass baseObj = this; // 将派生类实例赋给基类引用变量
baseObj.Name = "Accessing hidden property"; // 访问基类的隐藏属性
}
}
在这个示例中,派生类DerivedClass
隐藏了基类BaseClass
中的同名属性Name
。在AccessHiddenProperty
方法中,我们通过将派生类实例赋给基类引用变量baseObj
,然后通过该引用变量baseObj
来访问基类的隐藏属性Name
。
需要注意的是,隐藏属性会导致代码可读性较差,应谨慎使用。在实际开发中,应尽量避免使用隐藏属性,而是通过其他方式来实现需要的功能。
关于C#的基类和派生类的更多信息,可以参考腾讯云的C#开发文档:C#开发文档
领取专属 10元无门槛券
手把手带您无忧上云