Az Eclipse és a J2SE 5.0 kezdeti lépései

Az Eclipse a 3.1-es változat óta teljes mértékben támogatja a J2SE 5.0 (fedőneve "Tiger") új 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 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 > J2SE 5.0 beállítások menüpontban

Á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 egy 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 egy lista négy különböző paraméterezett megvalósításával

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

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

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

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

Inkompatibilis szűrő

A Pontatlan 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. Kódértelmezéshez be lehet jelölni fordítási figyelmeztetésként az automatikus típusátalakítás vagy -visszaalakítás példányokat (a Lehetséges programozási problémák részben, a Opens the Errors/Warnings preference page Java > Fordító > Hibák/Figyelmeztetések beállításoldalon) illetve szintaxis színezéssel ki lehet emelni őket (a Java > Automatikus átalakított típusú eszközök részben, a Opens the Syntax coloring preference page Java > Szerkesztő > Szintaxis színezés beállításoldalon):

Kiemelés engedélyezése automatikus típusátalakításnál

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.

Egyebek

A J2SE 5.0 minden egyéb szolgáltatását rugalmasan kezelik az Eclipse szerkesztő, kereső és kódkezelő eszközei: Kellemes kódolást!