"Здравей, Амиго! Днес ще говорим за пакети."

„Файловете на компютъра са групирани в папки. Класовете в Java (всеки клас се съхранява в отделен файл) са групирани в пакети, които съответстват на папките на твърдия диск. Така че тук няма нищо ново. Има две неща, които все пак бих искал да отбележа."

" Първо , пълното уникално име на класа се състои от името на неговия пакет плюс името на класа . Ето няколко примера:"

Пълно уникално име Име на пакета Име на класа
java.io.FileInputStream java.io FileInputStream
java.lang.String java.lang низ
java.util.ArrayList java.util ArrayList
org.apache.tomcat.Servlet org.apache.tomcat Сервлет
котка Неопределено котка

„Пълното име на клас винаги е уникално.“

„Би било мъка, ако трябва да пишем дългото име, т.е. java.util.ArrayList , всеки път. Ето защо Java ви позволява да импортирате класове. Можете да използвате кратките имена на други класове във вашия code, но в началото на вашия клас трябва изрично да посочите кои класове ще използвате."

"Как правиш това?"

„С ред, който изглежда така: import java.util.ArrayList;

„В началото на клас, веднага след декларирането на пакета, можете да посочите към кой клас се отнасяте, когато използвате ArrayList във вашия code.“

"Защо да усложняваме нещата? Могат ли класовете да имат еднакви имена?"

"Да. Може да има класове с едно и също име в различни пакети. Не можем да импортираме два класа с еднакви имена , така че ще трябва да наречем един от тях с пълното му име."

„Ето ви една аналогия. Имате колега на име Джим. Няма проблем с това: всеки знае кой е той. Но ако имаше трима Джим в офиса ви, ще трябва да ги наричате с пълните им уникални имена, за да избегнете объркване."

" Второ , винаги е по-добре да поставяте класове в пакети, а не в главната src папка . Когато нямате много класове, това не е проблем, но когато има много, е лесно да ги смесите. Винаги създавайте класове вътре в пакетите."

В Java обичайната практика е да се дават смислени имена на класове и пакети. Много компании пускат своите библиотеки (набори от класове) и ги назовават на своята компания or уебсайт, за да избегнат объркване:"

Име на пакета Име на фирма/проект
орг. apache .common
org. apache .tomcat
org. apache .util
Apache
com. оракул .jdbc Оракул
java .io
java x.servlet
Слънце, Ява
com. ibm.websphere IBM, WebSphere
com. jboss JBoss