Ebben a cikkben megtudhatja a csomagokat és azok használatát moduláris kód létrehozásához a Java-ban.
Java csomag
A csomag egyszerűen egy tároló, amely csoportosítja a kapcsolódó típusokat (Java osztályok, interfészek, felsorolások és kommentárok). Például a Java Java-ban az ResultSet
interfész a java.sql
csomaghoz tartozik . A csomag tartalmazza az SQL-lekérdezéshez és az adatbázis-kapcsolathoz szükséges összes kapcsolódó típust.
Ha a ResultSet
felületet szeretné használni a kódban, csak importálja a java.sql csomagot (A csomagok importálásáról a későbbiekben lesz szó).
Mint korábban említettük, a csomagok csak konténerek a Java osztályokhoz, interfészekhez és így tovább. Ezek a csomagok segítenek lefoglalni az osztály névterét és létrehozni egy fenntartható kódot.
Például két Date
osztályt találhat a Java-ban. A Java programozásban azonban az az alapszabály, hogy a Java projektekben csak egyetlen egyedi osztálynév engedélyezett.
Hogyan sikerült két azonos dátumú osztályt felvenni a JDK-ba?
Ez azért volt lehetséges, mert ez a két Date
osztály két különböző csomagba tartozik:
java.util.Date
- ez egy normális Date osztály, bárhol használható.java.sql.Date
- ez egy SQL dátum, amelyet az SQL lekérdezéshez használnak, és ilyesmi.
A csomagok két kategóriára oszthatók annak alapján, hogy a csomagot a felhasználó határozta-e meg vagy sem.
Beépített csomag
A beépített csomagok létező java csomagok, amelyek a JDK-val együtt érkeznek. Például, java.lang
, java.util
, java.io
, stb Például:
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); ) )
Kimenet :
myList = (3, 2, 1)
Az ArrayList
osztály tartozik java.util package
. Használatához először a csomagot kell importálnunk az utasítás segítségével import
.
import java.util.ArrayList;
Felhasználó által definiált csomag
A Java lehetővé teszi csomagok létrehozását is az igényeinek megfelelően. Ezeket a csomagokat felhasználó által definiált csomagoknak nevezzük.
Hogyan definiálható a Java csomag?
Csomag definiálásához Java-ban használja a kulcsszót package
.
package packageName;
A Java fájlrendszer-könyvtárakat használ a csomagok tárolására. Hozzunk létre egy Java fájlt egy másik könyvtárban.
Például:
└── com └── teszt └── Test.java
Most szerkessze a Test.java fájlt, és a fájl elejére írja a csomag utasítást:
csomag com.test;
Itt a tesztkönyvtárban deklarált bármely osztály a com.test csomagba tartozik .
Itt van a kód:
csomag com.test; osztály teszt (public static void main (String () args) (System.out.println ("Hello World!");))
Kimenet :
Helló Világ!
Itt a Test osztály most a com.test csomaghoz tartozik .
Csomag elnevezési megállapodás
A csomagnévnek egyedinek kell lennie (például egy domainnévnek). Ezért van egy megállapodás, amely egy csomagot domain névként hoz létre, de fordított sorrendben. Például com.company.name
Itt a csomag minden szintje egy könyvtár a fájlrendszerében. Mint ez:
└── com └── cég └── név
És nincs korlátozás arra vonatkozóan, hogy hány alkönyvtárat (csomag hierarchiát) hozhat létre.
Hogyan készítsünk csomagot az Intellij IDEA-ban?
Az IntelliJ IDEA-ban a következőképpen hozhat létre csomagot:
- Kattintson a jobb gombbal a forrás mappára.
- Ide új , majd csomagoljuk .
- Megjelenik egy előugró ablak, ahol megadhatja a csomag nevét.
A csomag létrehozása után hasonló mappaszerkezet jön létre a fájlrendszerén is. Most létrehozhat osztályokat, interfészeket és így tovább a csomag belsejében.

Hogyan importálhatunk csomagokat Java-ba?
A Java rendelkezik egy import
utasítással, amely lehetővé teszi egy teljes csomag importálását (a korábbi példákhoz hasonlóan), vagy csak a csomagban meghatározott osztályokat és interfészeket használhat.
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.
- a Helper osztályt egy másik fájlba importálja. A fájl tartalmazza a UseHelper osztályt.
- A
getFormattedDollar()
Helper osztály módszerét a UseHelper osztály belsejéből hívják meg.

A Java-ban az import
utasítás közvetlenül a package utasítás után (ha létezik) és az osztálydefiníció előtt íródik.
Például,
csomag csomag.név; import package.ClassName; // csak egy osztály osztályt importál a MyClass (// body)