Eclipse és J2SE 5.0

Az Eclipse a 3.1-es változat óta teljes mértékben támogatja a J2SE 5.0 új Java nyelvi szolgáltatásait. Ennek a támogatásnak ez egyik legfontosabb következménye, hogy ezt talán észre sem veszi --minden, aminek a J2SE 1.4 esetében működnie kell, beleértve a szerkesztést, a fordítást, a gyorsjavításokat, az átdolgozást, a forrásműveleteket, a keresést stb., zökkenőmentesen fog működni a J2SE 5.0 új típusaival és szintaxisával. Ebben a dokumentumban néhány érdekesebb képességet mutatunk be, amelyekkel az Eclipse felhasználók találkozhatnak a J2SE 5.0 használata közben.

Előfeltételek

A J2SE 5.0 változatának megfelelő kód fejlesztéséhez J2SE 5.0 vagy J2SE 6.0 Java futási környezetre (JRE) van szükség. Ha az Eclipse első indításakor J2SE 5.0 JRE környezetet használ, akkor alapértelmezésben ez kerül használatra. Egyébként a Opens the Installed JRE preference page Java > Telepített JRE-k beállításoldalon kell regisztrálnia az Eclipse-ben.

Ez a dokumentum a J2SE 5.0 néhány új nyelvi szolgáltatását mutatja be röviden, de nem nevezhető a szolgáltatások igazi ismertetőjének. A további információkat lásd itt.

Fordító egyeztetési szint

Az új J2SE 5.0 szolgáltatások használatához a projekt 5.0 egyeztetési szintjének engedélyezettnek kell lennie, 5.0-ás JRE mellett. Az új projektek automatikusan 5.0 egyeztetési szintre kerülnek az Megnyitja az Új Java projekt varázslót Új Java projekt varázsló első oldalán:

Új projekt varázsló

Ha egy meglévő J2SE 1.4 projektet J2SE 5.0 szintre akar átalakítani, akkor tegye az alábbiakat:
  1. Győződjön meg róla, hogy, J2SE 5.0 JRE környezet van telepítve.
  2. Használja az 5.0 szolgáltatásokat a kódban.
  3. Ha fordítói hiba jelentkezik, akkor a gyorsjavítás segítségével frissítse a projekt egyeztetési szintjét:

    Gyorsjavítás a J2SE 5.0 engedélyezésére

Ha még finomabban szeretné felügyelni a fordítói megfelelés szintjét, akkor az globálisan is beállítható a munkaterületen (a Opens the Java compiler preference page Java > Compiler beállításoldalon), vagy egyesével minden projekthez (a projekt előugró menüjében válassza a Tulajdonságok > Java fordító lehetőséget). Különböző egyeztetési szintű projektek együtt élhetnek a munkaterületen, és függhetnek egymástól. Az egyes projektek számára előállított különböző fordító figyelmeztetések és hibák is finomhangolhatók a Tulajdonságok > Java fordító > Hibák/Figyelmeztetések menüpontban. Az Általános típusok és a Feljegyzések rész a J2SE 5.0 verzióban hozzáadott beállításokat tartalmaz.

Általános típusok

Az általános típusok lehetővé teszik egy osztály objektumai számára, hogy biztonságosan működjenek különböző típusú objektumokkal. Például lehetővé teszik, hogy fordítás közben biztosítsuk, hogy a Lista<Karaktersorozat> mindig tartalmazzon Karaktersorozatokat, és a Lista<Egész szám> mindig tartalmazzon Egész számokat.

Ha az Eclipse kezeli a nem általános típusokat, akkor mindig lépes az általános típusok kezelésére is: Emellett új átdolgozással is bővült: az Általános típus argumentumok kikövetkeztetése ki tudja következtetni a típus paramétereket osztály, csomag vagy a teljes projekt minden típus hivatkozásához.

Alárendelt általános típusok paramétereinek meghívása

Az átdolgozás meghívásának eredményeképp:

Meghívott általános típus argumentumok kikövetkeztetése

Az Eclipse új lehetőségeket kínál az általános típusok hivatkozásainak keresésekor. Vegyük az alábbi példát:

Példa négy különbözően paraméterezett lista példányosítással

A Lista<Egész szám> hivatkozás kiválasztása és az előugró menü Keresés > Hivatkozások > Projekt menüpontjának használata kiemeli a Lista típusokat mind a négy sorban:

Keresés szűrők nélkül

A Keresés nézet menü segítségével lehet szűrni az eredményeket:

Az Inkompatibilis típus argumentumok szűrő csak azokat a típus hivatkozásokat hagyja meg, amelyek hozzárendelési szempontból kompatibilisek a kiválasztott típussal:

Inkompatibilis szűrő

A Pontatlan típus argumentumok szűrő csak a pontosan megegyező aláírással rendelkező típus hivatkozásokat hagyja meg:

Pontatlan szűrő

Feljegyzések

A feljegyzések metaadatokat tartalmaznak a Java típusok és metódusok használatának és a Java forráshoz való dokumentálásuknak a módjáról és így hatással lehetnek a fordításra, illetve lekérdezhetőek futás közben. Például az @Override aktivál egy fordító figyelmeztetést, ha a feljegyzett metódus nem definiálja újra a szülőosztály metódusát:

Feljegyzés újradefiniálása

Bármi, ami a Java típussal elvégezhető, az a feljegyzéssel is:

Az Eclipse egyik nagyon hasznos, teljes támogatású feljegyzése a @SuppressWarnings. Például vegyünk egy privát metódust, ami jelenleg használaton kívüli, de nem szeretné törölni:

Figyelmeztetés: nem használt privát metódus

Ha a figyelmeztetés megjelenésekor meghívja a gyorsjavítást, akkor az egy @SuppressWarnings feljegyzés hozzáadását javasolja:

SuppressWarnings ajánlat

A gyorsjavítás kiválasztásával a feljegyzés hozzáadásra kerül. Az Eclipse fordító a feljegyzés hatására eltávolítja a foo figyelmeztetést:

SuppressWarnings beillesztve

Felsorolások

A felsorolások olyan típusok, amelyeket egy ismert, véges objektum készlet példányosít futás közben:

enum típus

Itt is érvényes, hogy minden, amit egy Java osztállyal tenni lehet, az a felsorolással is működik:

Automatikus típusátalakítás

Az automatikus típusátalakítás és -visszaalakítás elegáns szintaxist tesz lehetővé primitív típusok objektum hivatkozásokhoz rendelésekor illetve lekérésekor:

automatikus típusátalakítás kiemelve

Az Eclipse forráskezelése zökkenőmentesen kezeli az automatikus típusátalakítás funkciót, a helyes típusokat adja meg az új helyi változók számára és helyesen használja a kódsegédet. A kód jobb érhetősége érdekében az automatikus típusátalakítás és visszaalakítás példányok jelzőkkel is elláthatók:

Bővített for ciklus

Abban a gyakori esetben, amikor egy tömb vagy kollekció minden egyes elemén dolgozik, a J2SE 5.0 új, tisztább szintaxist tesz lehetővé. Az Eclipse egy "foreach" kódsablont biztosít, amely automatikusan kitalálja az iterálandó kollekciót:

foreach sablon ajánlat

A sablon kiválasztásának hatására:

foreach sablon beillesztve

Az Eclipse egy "Átalakítás bővített for ciklusra" gyorssegédet is biztosít az 1.4 stílusú for ciklusok frissítésére, ahol lehetséges.

Statikus importálások

A statikus importálások más osztályok statikus mezőinek és metódusainak használatát teszik lehetővé korlátozás nélkül.

A Java szerkesztő tartalomsegédje képes ilyen statikus tagokat ajánlani, valamint szükség esetén statikus importálást ad hozzá. Ha ilyen ajánlásokat szeretne kapni, akkor konfigurálja a statikus importálási kedvenceket a Tartalomsegéd kedvencek beállításoldal megnyitása Java > Szerkesztő > Tartalomsegéd > Kedvencek beállításoldalon.

J2SE 1.4 kód átalakítása 5.0 verzióra

A J2SE 1.4 kód átalakítását támogatandó 5.0 verzióra az Eclipse a következő eszközöket kínálja: Kellemes kódolást!