【发布时间】:2016-09-12 04:46:20
【问题描述】:
如何访问抽象类的受保护成员?假设我有如下定义的类
public abstract class BaseClass
{
private int index ;
protected int GetIndex
{
get { return index ;}
set { index = value; }
}
}
public class MyClass : BaseClass
{
...
}
public class TestClass
{
var data = new MyClass()
var index = data.GetIndex;
}
线
var index = data.GetIndex;
抱怨由于它的保护级别而无法访问。如何访问TestClass中MyClass的GetIndex属性?
-艾伦-
【问题讨论】:
-
公开或内部或使用反射?
-
这不是受保护标识符的重要用途。你可以把它公开或内部..
-
为什么您希望受保护的成员可以在类/派生类的成员之外访问?非常不清楚您要达到的目标。
-
注意:属性不应包含文本
Get或Set。如果该属性代表一个索引,那么你应该这样命名int Index { get; set; }