Mám problém s pochopením následujícího (z knihy Java 7 - učebnice objektové architektury pro začátečníky - Rudolf Pecinovský):
"Třídy v kořenovém balíčku jsou pro ostatní třídy z jiných balíčků nedostupné. Třídy z kořenového balíčku totiž nemají plný název, takže je z jiného balíčku nemůžeme ani
importovat, ani přímo oslovit. V jiných balíčcích proto nemůžeme implementovat
rozhraní z kořenového balíčku ani mít potomka třídy z kořenového balíčku."
Chtěl jsem si to v Netbeans vyzkoušet - založil jsem si java projekt a v něm v kořenovém adresáři dva balíčky. První obsahoval třídu kterou jsem si chtěl vyzkoušet použít ve druhém balíčku (což by podle učebnice-pokud ji správně chápu-možné být nemělo). Ale ono to bylo funkční. Mohl byste mi někdo smysl toho textu z učebnice nějak vysvětlit?
Skutečně je problém v chápání, i když ty jeho interpretace jsou horor. I ten příklad co sis vytvořil není správně dle citace z knihy.
správná simulace =
1) vytvoříš projekt
2) vytvoříš pouze 1 balíček v kořenovém adresáři ( např. package balicek )
3) v daném balíčku vytvoříš třídu (např. class TridaBalicek )
4) a pak vytvoříš třídu přímo v kořenovém adresáři. Tato třída nebude mít definici balíčku a tudíž není přístupná přes standardní cestu. (např. class TridaBezBalicku )
třída s balíčkem
package balicek;
class TridaBalicek {
...
}
třída bez balíčku
class TridaBezBalicku {
...
}
PS. Pecinovského knihy o Javě jsou odpad zvol si radši jiné, ale co se týče jeho knihy o návrhových vzorech tak ta je mistrovské dílo.