Začínáme s produkty Eclipse a J2SE 5.0

Od verze 3.1 platforma Eclipse plně podporuje nové funkce J2SE 5.0 (kódový název "Tiger"). Jedním z nejdůležitějších důsledků této podpory je, že ji vůbec nemusíte zaznamenat -- vše, co očekáváte od J2SE verze 1.4, včetně úprav, kompilování, ladění, rychlých oprav, opětovných deklarací, akcí zdroje, hledání atd., bude bez problémů pracovat s novými typy a syntaxí J2SE verze 5.0. V tomto dokumentu vám představíme některé z nejzajímavějších schopností produktu Eclipse, které uživatelé naleznou při práci s J2SE 5.0.

Nezbytné předpoklady

Abyste mohli vytvořit kód kompatibilní s J2SE 5.0, budete potřebovat běhové prostředí J2SE 5.0 Java Runtime Environment (JRE). Pokud Eclipse spustíte poprvé s použitím J2SE 5.0 JRE, bude jej potom nadále používat standardně. Jinak budete muset k registraci v Eclipse použít stránku předvoleb Otevřít stránku předvoleb instalovaných prostředí JRE Java > Instalovaná prostředí JRE.

Tento dokument velmi stručně představuje některé z nových funkcí jazyka v J2SE 5.0, nejde však o řádný výukový materiál pro tyto funkce. Další informace naleznete zde.

Úroveň shody kompilátoru

Abyste mohli používat nové vlastnosti J2SE 5.0, musíte pracovat na projektu se zapnutou úrovní shody 5.0, který dále má k dispozici JRE verze 5.0. Nové projekty získají shodu s verzí 5.0 automaticky při výběru 5.0 JRE na první stránce Otevřít průvodce novým projektem Java Průvodce novým projektem Java:

Průvodce novým projektem

Abyste mohli převést stávající projekt J2SE 1.4 na verzi J2SE 5.0, můžete to provést jednoduše:
  1. Ujistěte se, že máte nainstalováno běhové prostředí J2SE 5.0 JRE.
  2. Začněte ve svém kódu používat funkce verze 5.0.
  3. Bude-li označena chyba kompilátoru, s použitím funkce Rychlé opravy aktualizujte úroveň shody projektu:

    Rychlá oprava k zapnutí J2SE 5.0

K zajištění přesnější kontroly lze úroveň shody kompilátoru nastavit globálně pro celý pracovní prostor (pomocí stránky předvoleb Otevřít stránku předvoleb kompilátoru Java Java > Kompilátor) nebo individuálně pro jednotlivé projekty (v kontextové nabídce projektu vyberte Předvolby > Kompilátor Java). V pracovním prostoru mohou současně existovat projekty s odlišnými úrovněmi shody a být na sobě vzájemně závislé. Pro každý projekt můžete také podrobně nastavit druhy vytvářených varování a chybových hlášení kompilátoru, a to pomocí Předvoleb > Kompilátor Java > Chyby/varování > Volby J2SE 5.0

Generické typy

Generické typy umožňují objektům stejné třídy bezpečně fungovat s objekty odlišných typů. Například umožňují v průběhu kompilace zabezpečit to, aby Seznam<Řetězec> vždy obsahovat Řetězce a Seznam<Integer> vždy obsahoval celé hodnoty.

Kdekoli platforma pracuje s negenerickými typy, může pracovat i s generickým typem: Kromě toho byla přidána nová opětovná deklarace: Odvodit argumenty generického typu může odvodit parametry typu pro každý odkaz na typ ve třídě, balíčku nebo v celém projektu:

Spuštění odvození argumentů generického typu

Vyvolání opětovné deklarace způsobí:

Vyvolaná funkce Odvodit argumenty generického typu

Platforma Eclipse poskytuje nové volby vyhledávání odkazů na generické typy. Posuďte tento příklad:

Příklad se čtyřmi různými parametrizovanými instancemi seznamu

Výběr odkazu na Seznam<Integer> a použití Hledat > Odkazy > Projekt zvýrazní typy seznamů na všech čtyřech čárách:

Hledat bez filtrů

S použitím nabídky pohled Vyhledávání lze výsledky filtrovat:

Filtrovat nekompatibilní ponechá pouze odkazy na typy, které jsou kompatibilní s vybraným typem:

Filtrovat nekompatibilní

Filtrovat nepřesné ponechá pouze odkazy na typy s přesně stejným příznakem:

Filtrovat nepřesné

Anotace

Anotace připojují metadata o tom, jak jsou používány typy a metody Java a jak jsou dokumentovány ve zdrojovém textu Java a mohou ovlivnit kompilaci nebo být dotazovány v době zpracování. Například @Override spustí varování kompilátoru v případě, že anotovaná metoda nepotlačí metodu v super třídě:

Potlačit anotaci

Vše co lze dělat s typem Java, můžete provádět i s anotací:

Velmi užitečná anotace s plnou podporou v prostředí Eclipse je @SuppressWarnings. Uvažujte například, že se momentálně nepoužívá soukromá metoda, ale raději byste ji nemazali:

Varování: Nepoužitá soukromá metoda

Vyvolání rychlé opravy při varování navrhne přidání anotace @SuppressWarnings:

Navrženo potlačování varování

Volba rychlé opravy přidá anotaci. Kompilátor Eclipse dodrží anotaci odebráním varování na foo:

Vloženo potlačení varování

Výčty

Výčty jsou typy, které jsou konkretizovány během zpracování známou, konečnou sadou objektů:

výčtový typ

Opět, cokoli lze provádět ve třídě Java, můžete provádět i ve výčtu:

Automatické uzavírání

Automatické uzavírání a automatické otevírání umožňují elegantní syntaxi v případě, že jsou k odkazům na objekty přiřazeny primitivní typy nebo jsou z nich načítány:

Zvýrazněno automatické uzavírání

Funkce prostředí Eclipse pro manipulaci se zdrojovým kódem pracují s automatickým uzavíráním plynule, přičemž poskytují správné typy lokálním proměnným a správná usnadnění práce s kódem. Kvůli srozumitelnosti kódu lze rovněž opatřit příznakem výstrahy kompilace instance automatického uzavírání nebo převody automatického otevírání (pomocí sekce Potenciální problémy programování stránky předvoleb Otevřít stránku předvoleb Chyby/varování Java > Kompilátor > Chyby/výstrahy), případně je zvýraznit barevným značením syntaxe (pomocí sekce Java > Automaticky zavřené (otevřené) výrazy na stránce předvoleb Otevřít stránku předvoleb barevného značení syntaxe Java > Editor > Barevné značení syntaxe):

Zpřístupnění zvýraznění pro automatické uzavírání

Rozšířená smyčka For

Pro běžné případy provádění operací střídavě v každém prvku pole nebo kolekce umožňuje J2SE 5.0 použití nové, čistější syntaxe. Eclipse nabízí šablonu kódu "foreach", která umí automaticky odhadnout kolekci, která má být opakována:

Navržena šablona foreach

Volba šablony způsobí:

Vložena šablona foreach

Eclipse také nabízí rychlou asistenci "Převést na rozšířený cyklus For" k přechodu na smyčky for vyšší verze 1.4, kdekoli je to možné.

Ostatní

Všechny ostatní funkce J2SE 5.0 jsou v prostředí Eclipse flexibilně zpracovávány nástroji pro úpravy, hledání a manipulaci s kódem: Spokojené programování!