以下は簡単なテストコードです。
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にアクセスできないのはなぜですか?