这个问题倒是蛮明确的,protected修饰符修饰的只有本身和子类可以访问。你给出的就是自身访问的例子。你这个例子里的FinishedWork是类内部的方法,就算是private的,也是可以内部调用的啊,这个对于这个类是可见的。
因为myPrintReport.PrintStart()里调用的FinishedWork()
PrintStart()是PrintReport类里的函数,无论private还是protected修饰在类里都能访问。
只有在类外面protected必须是继承的派生类才可以访问。
"protected不是必须是继承的派生类才可以访问的吗" 这句话是不对的
如果protect或者private声明函数A ,那么虽然在类的对象虽然不能直接调用A,但是类的函数成员是可以调用A的。
C++中protect声明的函数A在被继承后A的可访问性就会变成private,C#中应该也是这样的
protected 表示介于public 和private之间,protected 的成员是可以被子类访问的,
PrintStart()
这东西就是你那类里的吧。。。