The following argument may explain it:
Suppose you are outside the package
in which the class C that has the protected
method cMethod() or member cMember is defined.
Now suppose C aC = new
If you could
access aC.cMethod() or aC.cMember from this external package
then the access modifier protected
would be equivalent to the public
modifier, which defeats the object of having a protected
That is a contradiction
so the original
hypothesis has to be false
How does that look?
(It could also be wrong of course)
[ October 07, 2002: Message edited by: Barry Gaunt ]