Ниже приведен простой код тестирования:
public class A
{
protected int m = 0;
}
internal class B: A
{
public void test(A objA, B objB)
{
base.m++; //OK!
objA.m++; //cannot access protected member
m++; //OK!
objB.m++; //OK!
}
}
Могу ли я спросить, почему в методе B.testA () можно получить доступ к base.m (здесь base - класс A), но не может получить доступ к objA.m?