Show TOC

 Visibility of Package InterfacesLocate this document in the navigation structure

Interfaces are visible for a client package if the server package is not hidden within its server's superpackages and also the interface's access control list does not exclude the client. This means that an interface's visibility is controlled by the server-side interfaces, packages, and superpackages.

An interface is usable if it is visible and if the client package and its superpackages allow access through their dependency control lists. This means that an interface's usability is controlled by the client side.

Package interfaces of the following are visible to a client package:

  • direct sub-packages of the client package
  • sibling packages of the client package
  • direct and indirect superpackages of the client package, provided the package interfaces are marked as "visible inside" the package hierarchy
  • sibling packages of all (including indirect) superpackages of the client package
  • other root packages
  • packages whose access control list does not exclude the client package are visible

However, a package interface with Access Control Lists not including the package is not visible.

The following example illustrates the visibility of package interfaces. The shaded package is the one concerned.