Csomagok Java-ban: Hogyan lehet csomagokat létrehozni és használni Java-ban?



Ez a java csomagokról szóló bejegyzés segít megérteni, hogy mik is a csomagok, hogyan lehet ezeket létrehozni és használni a Java-ban a hatékony java-programozók érdekében.

Az egyik leginnovatívabb a csomagok fogalma.A Java csomagok az osztályok, interfészek, felsorolások, annotációk és alcsomagok csoportjának beillesztését szolgálják. Fogalmilag úgy gondolhatja, hogy a java csomagok hasonlóak a számítógép különböző mappáihoz. Ebben az oktatóanyagban bemutatjuk a csomagok alapjait

Az alábbiakban felsoroljuk a cikk témáit:





Mi a csomag a Java-ban?

A Java csomag a hasonló típusú osztályok, interfészek és alosztályok funkcionalitás alapján történő csoportosításának mechanizmusa. Amikor a szoftver be van írva a , több száz vagy akár több ezer egyedi osztályból állhat. énVan értelme a dolgokat úgy szervezni, hogy a kapcsolódó osztályokat és interfészeket csomagokba helyezzük.

A csomagok kódolás közbeni használata számos előnnyel jár, például:



    • Újrahasználhatóság: Egy másik program csomagjaiban található osztályok könnyen felhasználhatók
    • Névütközések: CsomagokSegítsen nekünk például egy osztály egyedi azonosításában cég.eladások.Munkavállaló és cég.marketing.Munkavállaló osztályok
    • Ellenőrzött hozzáférés: Ajánlatok hozzáférés védelme mint plrotált osztályok, alapértelmezett osztályok és privát osztályok
    • Adatok beágyazása : Ők pelősegíti az osztályok elrejtésének módját, megakadályozva, hogy más programok hozzáférjenek a csak belső használatra szánt osztályokhoz
    • Karbantartás: Csomagokkal,jobban megszervezheti projektjét, és könnyedén megkeresheti a kapcsolódó osztályokat

Jó gyakorlat a csomagok használata Java kódolás közben. Programozóként megtehetikönnyen kitalálhatja a , interfészek, felsorolások és kapcsolódó megjegyzések. Kétféle csomagunk van a java-ban.

Csomagok típusai a Java-ban

A csomagok két kategóriára oszthatók annak alapján, hogy a csomagot a felhasználó határozta-e meg vagy sem.

  1. Beépített csomagok
  2. Felhasználó által definiált csomagok

Beépített csomagok

Beépített vagy előre definiált csomagok azok, amelyek részeként jönnek létre (Java Development Kit) a Java programozó feladatának egyszerűsítése érdekében. Hatalmas számú előre definiált osztályból és interfészből állnak, amelyek a Java API-k részét képezik. Néhány gyakran használt beépített csomag a java.lang, java.io, java.util, java.applet stb. Itt van egy egyszerű program beépített csomag használatával.



package Edureka import java.util.ArrayList class BuiltInPackage {public static void main (String [] args) {ArrayList myList = new ArrayList (3) myList.add (3) myList.add (2) myList.add (1) System. out.println ('A lista elemei:' + myList)}}

Kimenet:

A lista elemei a következők: [3, 2, 1]

Az ArrayList osztály a java.util csomaghoz tartozik. A használatához az import utasítás használatával kell importálnunk a csomagot. A kód első sora importálja a java.util.ArrayList importálja a java.util csomagot és felhasználja amely jelen van az alcsomagban util.

Felhasználó által definiált csomagok

A felhasználó által definiált csomagok azok, amelyeket a felhasználók a kapcsolódó osztályok, interfészek és alcsomagok csoportosítása céljából fejlesztettek ki. Egy példa program segítségével nézzük meg, hogyan lehet csomagokat létrehozni, Java programokat fordítani a csomagok belsejében és végrehajtani.

Csomag létrehozása Java-ban

Csomag létrehozása Java-ban nagyon egyszerű feladat. Válasszon nevet a csomagnak, és írja be a csomag parancsot a Java forrásfájl első utasításaként. A java forrásfájl tartalmazhatja azokat az osztályokat, interfészeket, felsorolásokat és kommentár típusokat, amelyeket fel akar venni a csomagba.Például az alábbi utasítás létrehoz egy nevű csomagot MyPackage.

csomag MyPackage

A package utasítás egyszerűen meghatározza, hogy a megadott osztályok melyik csomaghoz tartoznak.

Jegyzet: Ha kihagyja a csomag utasítást, akkor az osztálynevek az alapértelmezett csomagba kerülnek, amelynek nincs neve. Bár az alapértelmezett csomag megfelel a rövid programok számára, a valós alkalmazásokhoz nem megfelelő.

Osztályt tartalmaz a Java csomagban

Nak nekhozzon létre egy osztályt a csomag belsejében, meg kelldeklarálja a csomag nevét a program első utasításaként. Ezután vegye fel az osztályt a csomag részeként. De ne feledje, hogy egy osztálynak csak egy csomagdeklarációja lehet. Itt van egy egyszerű program a koncepció megértéséhez.

csomag MyPackage public class Összehasonlítás {int num1, num2 Összehasonlítás (int n, int m) {num1 = n num2 = m} public void getmax () {if (num1> num2) {System.out.println ('Kettő maximális értéke a számok '+ num1)} else {System.out.println (' Két szám maximális értéke '+ num2)}} public static void main (String args []) {Current current [] = new [3] current összehasonlítása [1] = új (5, 10) összehasonlítás [2] = új (123, 120) összehasonlítás (int i = 1 i)<3 i++) { current[i].getmax() } } } 

Kimenet:

keresztböngésző tesztelés szelén web meghajtóban
Két szám maximális értéke 10 Két szám maximális értéke 123

Mint láthatja, deklaráltam egy MyPackage nevű csomagot, és létrehoztam egy összehasonlító osztályt a csomag belsejében. A Java fájlrendszer-könyvtárakat használ a csomagok tárolására. Tehát ezt a programot fájlként mentenék el Hasonlítsa össze.java és a MyPackage nevű könyvtárba kerül. Amikor a fájl összeáll, a Java létrehoz egy .osztály fájlt, és tárolja ugyanabban a könyvtárban. Ne feledje, hogy a csomag nevének meg kell egyeznie azzal a könyvtárral, amelybe a fájlt mentették.

Kíváncsi lehet, hogyan lehet használni ezt az összehasonlítási osztályt egy másik csomag osztályából?

Osztály létrehozása a csomag belsejében egy másik csomag importálása közben

Nos, ez nagyon egyszerű. Csak importálnia kell. Az importálás után a nevével férhet hozzá. Itt van egy minta program, amely bemutatja a koncepciót.

csomag Edureka MyPackage importálása. Hasonlítsa össze a nyilvános osztály Demo {public static void main (String args []) {int n = 10, m = 10 Összehasonlítás current = new Összehasonlítás (n, m) if (n! = m) {current.getmax ()} else {System.out.println ('Mindkét érték megegyezik')}}}

Kimenet:

Mindkét érték ugyanaz

Először deklaráltam a csomagot Edureka , majd importálta az osztályt Hasonlítsa össze a MyPackage csomagból. Szóval, a sorrendamikor egy osztályt hozunk létre egy csomag belsejében, miközben egy másik csomagot importálunk,

  • Csomagnyilatkozat
  • Csomag importálása

Nos, ha nem akarja használni az importálási utasítást, van egy másik alternatíva a csomag osztályfájljának eléréséhez egy másik csomagból. Csak importálhatja a teljesen minősített nevet a .

Teljesen minősített név használata osztály importálása közben

Itt van egy példa a koncepció megértésére. Ugyanazt a csomagot fogom használni, amelyet korábban a blogban deklaráltam, MyPackage .

csomag Edureka public class Demo {public static void main (String args []) {int n = 10, m = 11 // Teljes minősítésű név használata a MyPackage importálása helyett. Hasonlítsa össze a current = new MyPackage.Compare (n, m) if ( n! = m) {current.getmax ()} else {System.out.println ('Mindkét érték megegyezik')}}}

Kimenet:

Két szám maximális értéke 11

A Demo osztályban a csomag importálása helyett a teljesen minősített nevet használtam, mint pl MyPackage.Compare hogy létrehozza annak tárgyát. Mivel csomagok importálásáról van szó, érdemes megnézni a statikus import fogalmát a Java-ban.

Statikus importálás Java-ban

A statikus import funkciót 2007 - ben vezették be Az 5. verziótól kezdve megkönnyíti a Java programozó számára, hogy bármilyen statikushoz hozzáférjenegy osztály tagja közvetlenül a teljesen minősített név használata nélkül.

MyPackage import static java.lang.Math. * // static import import static java.lang.System. * // static import public class StaticImportDemo {public static void main (String args []) {double val = 64.0 double sqroot = sqrt (val) // Az sqrt () metódus elérése közvetlenül out.println ('A' + val + 'Sq. gyökere' + sqroot) // Nem kell használnunk a 'System.out}}
 Kimenet: 
Sq. A 64.0 gyökere 8.0

Bár a statikus import használata kevesebb kódolást igényel, a túlzott használata a programot olvashatatlanná és fenntarthatatlanná teheti. Most térjünk át a következő témára, a csomagok beléptetésének ellenőrzésére.

Hozzáférés-védelem Java csomagokban

Lehet, hogy tisztában van a Java hozzáférés-szabályozási mechanizmusának és annak különböző szempontjaival hozzáférési specifikátorok . A Java-csomagok újabb dimenziót adnak a hozzáférés-vezérléshez. Az osztályok és a csomagok is eszközei adatok beágyazása . Míg a csomagok osztályok és más alárendelt csomagok tárolóként működnek, addig az osztályok az adatok és a kód tárolóként szolgálnak. A csomagok és az osztályok közötti kölcsönhatás miatt a Java csomagok négy láthatósági kategóriát foglalkoznak az osztály tagjai számára:

  • Alosztályok ugyanabban a csomagban
  • Nem alosztályok ugyanabban a csomagban
  • Alosztályok különböző csomagokban
  • Osztályok, amelyek sem ugyanabban a csomagban, sem alosztályokban nincsenek

Az alábbi táblázat avalós kép arról, hogy milyen típusú hozzáférés lehetséges és melyik nem, ha csomagokat használunk a Java-ban:

Magán Nincs módosító Védett Nyilvános

Ugyanabba az osztályba

Igen

Igen

Igen

Igen

Ugyanaz a csomag alosztályai

Nem

Igen

Igen

Igen

Ugyanaz a csomag nem alosztályok

Nem

Igen

Igen

Igen

Különböző csomagok alosztályai

Nem

Nem

Igen

Igen

Különböző csomagok, nem alosztályok

Nem

Nem

Nem

Igen

A fenti táblázatban szereplő adatokat az alábbiak szerint egyszerűsíthetjük:

  1. Minden nyilvánosnak nyilvánított bárhonnan hozzáférhető
  2. A privátnak nyilvánított dolgok csak az adott osztályon belül láthatók
  3. Ha a hozzáférés-specifikáló nem szerepel, akkor egy elem látható lesz az alosztályok és az ugyanazon csomag többi osztálya számára
  4. Végül, minden deklarált védett elem látható az aktuális csomagon kívül, de csak azoknak az osztályoknak, amelyek közvetlenül az Ön osztályát osztják be

Így a Java csomagok hozzáférés-vezérlést biztosítanak az osztályok számára. Nos, ez felöleli a csomagok fogalmát a Java-ban. Íme néhány szempont, amelyet érdemes szem előtt tartania a csomagok használatakor .

Emlékezetes pontok

  • Minden osztály része valamilyen csomagnak. Ha kihagyja a csomag utasítást, akkor az osztálynevek az alapértelmezett csomagba kerülnek
  • Egy osztálynak csak egy csomagkivonata lehet, de több importálási utasítás is lehet
  • A csomag nevének meg kell egyeznie azzal a könyvtárral, amelybe a fájlt mentették
  • Egy másik csomag importálásakor a csomagdeklarációnak kell lennie az első utasításnak, amelyet a csomagimport követ

Nos, ezzel a „Csomagok a Java-ban” cikk végére érünk. Tanultunkmi az a csomag, és miért kell használnunk őket. Kétségtelen, hogy a Java csomag a hatékony java programozók egyik legfontosabb része. Nemcsak frissíti a programozó kódolási stílusát, hanem rengeteg további munkát is csökkent.

egy tömb javascript-hossza

Ha megtalálta ezt a cikket a „Csomagok a Java-ról”, nézze meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon. Azért vagyunk itt, hogy segítséget nyújthassunk utazásának minden lépésében, hogy e java interjúk kérdése mellett a tanévre váltsunk, előállítunk egy tananyagot, amelyet azoknak a hallgatóknak és szakembereknek tervezünk, akik Java fejlesztők szeretnének lenni.