Henning P. Schmiedehausen writes:
One of the quirks in the Java language is, that the package names (foo, foo.bar, foo.bar.baz) imply a hierarchy which in fact does not exist. There is no "visible in package and sub-packages" modifier. So if you want to use an utility class in foo, foo.bar, foo.baz, you have to make it public (Sun, are you listening? Here is a chance for another cool new scope that C# probably doesn't have yet. ;-) )
It's off-topic, but C# does provide the desired meaning with its 'internal' access modifier keyword, and there is no 'package private' classes there, see http://msdn.microsoft.com/library/en-us/csref/html/vclrfInternalPG.asp
The possible Java pattern is to provide 'private' package(s), and prohibit their usage, like Sun did with sun.* packages: http://java.sun.com/products/jdk/faq/faq-sun-packages.html
--Andrei Polushin --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
