"Merhaba Amigo! Bugün paketlerden bahsedeceğiz."

"Bilgisayardaki dosyalar klasörler halinde gruplanır. Java'daki sınıflar (her sınıf ayrı bir dosyada saklanır), sabit sürücüdeki klasörlere karşılık gelen paketler halinde gruplanır. Yani burada yeni bir şey yok. İki şey var" Yine de belirtmek isterim."

" Öncelikle , bir sınıfın tam benzersiz adı, paket adı artı sınıf adından oluşur . İşte bazı örnekler:"

Tam benzersiz ad Paket ismi Sınıf adı
java.io.FileInputStream java.io Dosya Giriş Akışı
java.lang.String java.lang Sicim
java.util.ArrayList java.util Dizi Listesi
org.apache.tomcat.Servlet org.apache.tomcat servlet
Kedi Belirtilmemiş Kedi

"Tam bir sınıf adı her zaman benzersizdir."

"Her seferinde java.util.ArrayList gibi uzun bir ad yazmak zorunda kalsaydık, bu bir acı olurdu . Bu nedenle Java, sınıfları içe aktarmanıza izin verir. Kodunuzda diğer sınıfların kısa adlarını kullanabilirsiniz, ancak sınıfınızda hangi sınıfları kullanacağınızı açıkça belirtmelisiniz."

"Bunu nasıl yaptın?"

"Şuna benzeyen bir satırla: import java.util.ArrayList;"

"Bir sınıfın başında, paketi bildirdikten hemen sonra, kodunuzda ArrayList kullandığınızda hangi sınıfa başvurduğunuzu belirtebilirsiniz ."

"Neden işler aşırı karmaşık? Sınıfların adları aynı olabilir mi?"

"Evet. Farklı paketlerde aynı ada sahip sınıflar olabilir. Aynı ada sahip iki sınıfı içe aktaramayız , bu yüzden birini tam adıyla çağırmamız gerekir."

"İşte size bir benzetme. Jim adında bir meslektaşınız var. Bunda sorun yok: herkes onun kim olduğunu biliyor. bilinç bulanıklığı, konfüzyon."

" İkincisi , sınıfları kök src klasörüne değil, paketlere yerleştirmek her zaman daha iyidir . Çok sayıda sınıfınız olmadığında bu bir sorun değildir, ancak çok sayıda olduğunda, bunları karıştırmak kolaydır. Her zaman sınıflar oluşturun paketlerin içinde."

Java'da yaygın uygulama, sınıflara ve paketlere anlamlı adlar vermektir. Birçok şirket kitaplıklarını (sınıf kümelerini) yayınlar ve karışıklığı önlemek için şirketlerinin veya web sitelerinin adını verir:"

Paket ismi Şirket/proje adı
org. apache .common
org. apache .tomcat
org. apache .util
Apaçi
com. kehanet .jdbc kehanet
java.io
java x.servlet _
Güneş, Java
com. ibm.websphere IBM, WebSphere
com. patron JBoss