Member access modifiers apply that the class level not the object level. For example, the following perfectly legal in Java.
class Foo { private String name; public String someOneElsesName(Foo another) { return another.name; } }
The method someOneElsesName()
returns the value of a private instance variable of an object that is not one on which the method was executed. This is suppose to promote good encapsulation?