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]

Reply via email to