Class csomag, csomag

Csomag csomag lehetővé teszi, hogy logikailag összekapcsolják osztályokat készletek. A fő osztályok szerepelnek a java csomag java.lang. Különböző helper osztályok elrendezve a csomagot java.util. Osztályok bemeneti és kimeneti szerepelnek a csomagban java.io, és osztályokba hálózatépítés - a java.net. Néhány ilyen csomag tartalmaz alcsomag. Például, java.lang tartalmaz két speciális java.lang.reflect és java.lang.ref csomagot és java.util alcsomag tartalmazza java.util.zip, amely magában foglalja osztályok dolgozó ZIParhivami.

Minden osztálynak van mind egy egyszerű nevet adni azt a meghatározást, és a teljes neve, beleértve a csomag nevét, amelybe belép. Például a string osztály része a java.lang csomagot, és a teljes neve - java.lang.String.

csomag szerkezetét pontosan tükrözi a szerkezet a fájlrendszert. Minden forrás fájlok (java-osztály) és a byte-kód (kiterjesztés osztály), alkotó egy csomag tárolja ugyanabban a könyvtárban, mint a fájlrendszer. Alcsomag alkotják alkönyvtárairól ezt a könyvtárat. Minden csomag létrehoz egy névtér névtér. Ez azt jelenti, hogy az összes nevet osztályok és interfészek a csomagban egyedinek kell lennie. Nevek különböző csomagokat lehet azonos, de ez lesz a különböző szoftver modulok. Szervezése osztályok formájában csomagokat, hogy ne névütközéshez osztályok között. A csomag párhuzamos osztály nevek nem engedélyezett. Osztályába tartozó csomag biztosítja az egyediségét neveket.

Annak megadásához, hogy az osztály tartozik egy adott csomagot, használja az irányelv csomagot. majd a nevét (elérési út) A csomag tartalma:

Ebben a példában a HelloWorld osztály található company.common csomagot. Fizikailag ez a könyvtár «$ / cég / közös». Amikor létrehoz egy osztály egy IDE (pl Eclipse) csomag kell tüntetni a nevet, akkor az IDE magad, ha szükséges, hozzon létre egy könyvtárat a merevlemezen, és helyezzük egy új osztályt a katalógusban.

Lehet csomag az osztályban nincs definiálva. Ebben az esetben az osztály lesz az alapértelmezett csomagot, amelynek nincs neve, „$”, azaz osztály lesz található a gyökérkönyvtárban a projekt forráskódját.

Csomag neve bármi lehet, de meg kell felelnie annak egyediségét a projektben. Megállapodás «Code egyezmények» javasolja, hogy írjon a csomag nevét kisbetűvel. Akkor nem egyezik az osztály nevét, amely egyezményesen kezdődik nagybetűvel.

Java API standard könyvtár több száz osztályok. Minden programozó a kialakítása során több tucat az osztályokat. A beállított osztályok rohamosan növekszik. Java lehetővé teszi, hogy külön osztályokat, hogy megoldja egy konkrét feladat (vagy több feladat), együtt egy osztály könyvtár formájában jar fájlokat. De ezek osztály könyvtárak, amellett, hogy a hagyományos, nem része a java nyelvet.

Import csomagok és osztályok, import

Ahhoz, hogy osztályt az alkalmazás, akkor kell csatlakoztatni. Tehát található a csomagban java.util Scanner osztály lehet csatlakoztatni, a következő módon:

Ebben a példában, amikor meghatározzák / hozzon létre egy új objektumot Megadja a csomag (a teljes elérési utat). Ez a megközelítés azonban nem mindig kényelmes, és alternatív módon lehet behozni csomagok és osztályok az alkalmazást az import irányelvet. ami jelzi, miután az irányelv csomag:

Az import direktíva azt az elején a kódot, majd egy plug-in osztály nevét (class Scanner a példában).

A példa csatlakozik csak egy osztályba. Azonban java.util csomag tartalmazza a nagyszámú különböző osztályok. És hogy ne csatlakozzon külön minden osztály, tud-e csatlakozni az egész csomagot egyszerre:

Most már tudod használni minden osztályban a java.util csomagot.

Lehetőség van arra, hogy amikor a két osztály az azonos nevű, de különböző csomagokat. Ez vonatkozik például a Date osztály. állnak rendelkezésre a csomag java.util és java.sql csomagot. vagy a csomagok listájában java.util és java.awt. És ha kell használni mindkét osztályból, meg kell adni a teljes elérési utat az osztályok a csomagban:

Meg kell mondani, hogy a fő osztály a java.lang csomag (például karakterlánc) automatikusan csatlakozik, és nem igényli a „import”.

Import statikus osztály, import statikus

A java akkor statikus import. Ehhez együtt az irányelv import módosító használatához statikus:

A példa egy statikus osztály import Rendszer és Math. amelyek a statikus módszerek. Meghatározására statikus import lehetővé teszi, hogy a statikus módszerek nélkül az osztály nevét. A példában a statikus függvény sqrt (20) (és lehet Math.sqrt (20)), visszatér a négyzetgyöke számát. Ugyanez vonatkozik az osztály rendszer. amely meghatározza egy statikus objektumot ki. így tudod használni, hogy nem adja meg osztályt, ha az osztály készül statikus import rendszer.

Példa a különböző osztályok a csomagok

Vegyünk egy egyszerű projekt PackageExample, köztük 3 java-osztályban. Két osztály java-található egy csomagban «ru.java.online», és a harmadik - a másik «ru.java.online.classes». A projekt felépítése látható a következő képen:

Class csomag, csomag

Felsorolása az alap osztály, BaseClass.java

A alap osztály magában foglalja a 2 mezők (id, név) és kap / beállított módszerek. A kivitelező inicializálja a mezők értékeit.

Túlhatározott toString () függvény az osztály nevét és értékét területeken.

Listing örökös, Inheritor.java

Inheritor.java osztály örököl alap osztály BaseClass.java. Mivel raspolayutsya osztályok különböző csomagokban, az alap osztály kell behozni.

Felsorolja a fő osztály, MainPackage.java

A fő osztály tartalmaz egy statikus módszer fő. Mivel ez az osztály nem „látja” az örökös, meg kell importálni.

Az eredmény a program jelenik meg a konzolon a következő formában:

Amint látható, az eredmény a program tartalmaz egy csomag nevét az osztály.

Beszél a teljes nevét az osztály meg kell jegyezni, hogy ez nem csak a csomag nevét és az osztály neve, hanem az osztály betöltő osztálybetöltővel. Részletek az osztály rakodó itt olvasható.

Kapcsolódó cikkek