protected internal
的范围是相同的程序集,或者是另一个程序集中的任何派生类。那么为什么不能派生受保护的内部类?
示例代码:
protected internal class AbsClass
{
int m = 50;
public int am = 5;
public void nonAbsfn()
{
Console.WriteLine(m + am);
}
}
class TestAbstract : AbsClass
{
}
答案 0 :(得分:5)
如果类是内部类,则该类只能是protected internal
否则,课程只能是public
或internal
。
要修复编译错误,请将课程设为public
或internal
。您获得的错误与派生类TestAbstract
无关。
答案 1 :(得分:0)
类型或成员可以由声明它的程序集中的任何代码访问,也可以从另一个程序集中的派生类中访问。来自另一个程序集的访问必须在一个类声明中进行,该声明派生自声明受保护的内部元素的类,并且它必须通过派生类类型的实例进行。
所以你应该能够做到。你能发布一些代码吗?