I found an explanation for that under
http://hakata.mt.cs.cmu.edu/20-783/Slides/08_Elaboration_6.ppt Sending messages requires visibility : a reference or pointer to the receiving object
�For an object A to send a message to an object B, B must be visible to A.�
Ways in which A can have visibility into B:
Attribute Visibility: B is an attribute of A
Parameter Visibility: is a parameter of a method of A
Local Visibility: B is a (non-parameter) local object in a method of A
Global visibility: B is in some way globally visible
so if B is associated to A, there is obviously attribute visibility. Not intuitive.
Regards
SCJP 1.4(90%), SCWCD 1.2(94%), SCJD (366/400), SCBCD (91%), SCEA (88%)