"Hallo, Amigo! Vandaag gaan we het hebben over pakjes."
"Bestanden op een computer zijn gegroepeerd in mappen. Klassen in Java (elke klasse is opgeslagen in een apart bestand) zijn gegroepeerd in pakketten, die overeenkomen met mappen op de harde schijf. Er is hier dus niets nieuws. Er zijn twee dingen die ik' Ik wil er echter op wijzen.'
" Ten eerste bestaat de volledige unieke naam van een klasse uit de pakketnaam plus de klassenaam . Hier zijn enkele voorbeelden:"
Volledige unieke naam | Verpakkingsnaam | Naam van de klasse |
---|---|---|
java.io.FileInputStream | java.io | FileInputStream |
java.lang.String | java lang | Snaar |
java.util.ArrayList | java.util | ArrayLijst |
org.apache.tomcat.Servlet | org.apache.tomcat | servlet |
Kat | Niet gespecificeerd | Kat |
"Een volledige klassenaam is altijd uniek."
"Het zou vervelend zijn als we elke keer de lange naam, java.util.ArrayList , zouden moeten schrijven. Daarom kun je met Java klassen importeren. Je kunt korte namen van andere klassen in je code gebruiken, maar aan het begin van uw klasse moet u expliciet aangeven welke klassen u gaat gebruiken."
"Hoe doe je dat?"
"Met een regel die er zo uitziet: import java.util.ArrayList;
"
"Aan het begin van een klasse, direct na het declareren van het pakket, kun je aangeven naar welke klasse je verwijst als je ArrayList in je code gebruikt."
"Waarom dingen te ingewikkeld maken? Kunnen klassen identieke namen hebben?"
"Ja. Er kunnen klassen zijn met dezelfde naam in verschillende pakketten. We kunnen geen twee klassen met identieke namen importeren , dus zouden we er een bij zijn volledige naam moeten noemen."
"Hier is een analogie voor jou. Je hebt een collega die Jim heet. Geen probleem: iedereen weet wie hij is. Maar als er drie Jims in je kantoor zouden zijn, zou je ze bij hun volledige unieke naam moeten noemen om te voorkomen verwarring."
" Ten tweede is het altijd beter om klassen in pakketten te plaatsen, niet in de hoofdmap src . Als je niet veel klassen hebt, is dit geen probleem, maar als er veel zijn, is het gemakkelijk om ze door elkaar te halen. Maak altijd klassen aan binnen pakketten."
In Java is het gebruikelijk om klassen en pakketten betekenisvolle namen te geven. Veel bedrijven geven hun bibliotheken (klassensets) vrij en noemen ze naar hun bedrijf of website om verwarring te voorkomen:"
Verpakkingsnaam | Bedrijfs-/projectnaam |
---|---|
org. apache .common org. apache .tomcat org. apache.util _ |
Apache |
com. orakel .jdbc | Orakel |
java .io java x.servlet |
Zon, Java |
com. ibm.websphere | IBM, WebSphere |
com. jboss | JBoss |
GO TO FULL VERSION