In dit artikel leert u over pakketten en hoe u deze kunt gebruiken om modulaire code in Java te maken.
Java-pakket
Een pakket is gewoon een container waarin verwante typen zijn gegroepeerd (Java-klassen, interfaces, opsommingen en annotaties). In core Java ResultSet
hoort de interface bijvoorbeeld bij het java.sql
pakket. Het pakket bevat alle gerelateerde typen die nodig zijn voor de SQL-query en databaseverbinding.
Als u de ResultSet
interface in uw code wilt gebruiken , importeert u gewoon het java.sql- pakket (het importeren van pakketten wordt later in het artikel besproken).
Zoals eerder vermeld, zijn pakketten slechts containers voor Java-klassen, interfaces enzovoort. Deze pakketten helpen je om de naamruimte van de klassen te reserveren en een onderhoudbare code te maken.
U kunt bijvoorbeeld twee Date
klassen in Java vinden. De vuistregel bij het programmeren in Java is echter dat slechts één unieke klassenaam is toegestaan in een Java-project.
Hoe zijn ze erin geslaagd om twee klassen met dezelfde naam Date in JDK op te nemen?
Dit was mogelijk omdat deze twee Date
klassen tot twee verschillende pakketten behoren:
java.util.Date
- dit is een normale Date-klasse die overal kan worden gebruikt.java.sql.Date
- dit is een SQL-datum die wordt gebruikt voor de SQL-query en dergelijke.
Afhankelijk van het feit of het pakket door de gebruiker is gedefinieerd of niet, worden pakketten in twee categorieën onderverdeeld:
Ingebouwd pakket
Ingebouwde pakketten zijn bestaande java-pakketten die met de JDK worden meegeleverd. Bijvoorbeeld, java.lang
, java.util
, java.io
, etc. Bijvoorbeeld:
import java.util.ArrayList; class ArrayListUtilization ( public static void main(String() args) ( ArrayList myList = new ArrayList(3); myList.add(3); myList.add(2); myList.add(1); System.out.println(myList); ) )
Uitgang :
myList = (3, 2, 1)
De ArrayList
klas behoort tot java.util package
. Om het te gebruiken, moeten we het pakket eerst importeren met behulp van de import
instructie.
importeer java.util.ArrayList;
Door de gebruiker gedefinieerd pakket
Met Java kunt u ook pakketten maken volgens uw behoefte. Deze pakketten worden door de gebruiker gedefinieerde pakketten genoemd.
Hoe definieer ik een Java-pakket?
Om een pakket in Java te definiëren, gebruikt u het trefwoord package
.
pakket pakketnaam;
Java gebruikt bestandssysteemmappen om pakketten op te slaan. Laten we een Java-bestand maken in een andere map.
Bijvoorbeeld:
└── com └── test └── Test.java
Bewerk nu het bestand Test.java en schrijf aan het begin van het bestand de pakketinstructie als:
pakket com.test;
Hier behoort elke klasse die binnen de testdirectory wordt gedeclareerd, tot het com.test- pakket.
Hier is de code:
pakket com.test; class Test (public static void main (String () args) (System.out.println ("Hallo wereld!");))
Uitgang :
Hallo Wereld!
Hier behoort de klasse Test nu tot het pakket com.test .
Pakket naamgeving
De pakketnaam moet uniek zijn (zoals een domeinnaam). Daarom is er een conventie om een pakket als domeinnaam te maken, maar in omgekeerde volgorde. Bijvoorbeeld com.company.name
Hier is elk niveau van het pakket een map in uw bestandssysteem. Zoals dit:
└── com └── bedrijf └── naam
En er is geen beperking op het aantal submappen (pakkethiërarchie) dat u kunt maken.
Hoe maak je een pakket aan in Intellij IDEA?
In IntelliJ IDEA kunt u als volgt een pakket maken:
- Klik met de rechtermuisknop op de bronmap.
- Ga naar nieuw en vervolgens naar pakket .
- Er verschijnt een pop-upvenster waarin u de pakketnaam kunt invoeren.
Zodra het pakket is gemaakt, wordt er ook een vergelijkbare mapstructuur op uw bestandssysteem gemaakt. Nu kunt u klassen, interfaces enzovoort maken in het pakket.

Hoe pakketten importeren in Java?
Java heeft een import
instructie waarmee u een volledig pakket kunt importeren (zoals in eerdere voorbeelden), of alleen bepaalde klassen en interfaces kunt gebruiken die in het pakket zijn gedefinieerd.
The general form of import
statement is:
import package.name.ClassName; // To import a certain class only import package.name.* // To import the whole package
For example,
import java.util.Date; // imports only Date class import java.io.*; // imports everything inside java.io package
The import
statement is optional in Java.
If you want to use class/interface from a certain package, you can also use its fully qualified name, which includes its full package hierarchy.
Here is an example to import a package using the import
statement.
import java.util.Date; class MyClass implements Date ( // body )
The same task can be done using the fully qualified name as follows:
class MyClass implements java.util.Date ( //body )
Example: Package and importing package
Suppose, you have defined a package com.programiz that contains a class Helper.
package com.programiz; public class Helper ( public static String getFormattedDollar (double value)( return String.format("$%.2f", value); ) )
Now, you can import Helper class from com.programiz package to your implementation class. Once you import it, the class can be referred directly by its name. Here's how:
import com.programiz.Helper; class UseHelper ( public static void main(String() args) ( double value = 99.5; String formattedValue = Helper.getFormattedDollar(value); System.out.println("formattedValue = " + formattedValue); ) )
Output:
formattedValue = $99.50
Here,
- the Helper class is defined in com.programiz package.
- de Helper-klasse wordt geïmporteerd in een ander bestand. Het bestand bevat de klasse UseHelper.
- De
getFormattedDollar()
methode van de Helper-klasse wordt aangeroepen vanuit de UseHelper-klasse.

In Java wordt de import
instructie direct na de pakketinstructie (als deze bestaat) en vóór de klassendefinitie geschreven.
Bijvoorbeeld,
pakket package.name; importeer package.ClassName; // importeer alleen een Class class MyClass (// body)