Środowisko Eclipse 3.1 oferuje pełną obsługę nowych funkcji środowiska J2SE 5.0 (nazwa kodowa "Tiger"). Jedną z najważniejszych konsekwencji tej obsługi jest fakt, że można jej w ogóle nie zauważyć - wszystkie operacje, które powinny działać w środowisku J2SE 1.4, w tym edytowanie, kompilowanie, debugowanie, szybkie poprawki, operacje refaktoryzacji, akcje źródłowe, wyszukiwanie itp., będą funkcjonowały bezproblemowo z nowymi typami i składnią środowiska J2SE 5.0. W tym dokumencie zostanie opisanych kilka z najciekawszych możliwości, z jakimi może się spotkać użytkownik środowiska Eclipse współpracującego ze środowiskiem J2SE 5.0.
Do pisania kodu zgodnego ze środowiskiem J2SE 5.0 niezbędne jest środowisko wykonawcze programów Java J2SE 5.0 (JRE). Jeśli środowisko Eclipse jest uruchamiane po raz pierwszy wraz ze środowiskiem J2SE 5.0 JRE, to będzie ono używane domyślnie. W przeciwnym razie należy skorzystać z okna dialogowego Zainstalowane środowiska JRE (Okna > Preferencje > Java > Zainstalowane środowiska JRE), aby zarejestrować je w środowisku Eclipse.
Ten dokument opisuje w dużym skrócie niektóre nowe funkcje języka środowiska J2SE 5.0, ale nie jest to w istocie kurs dotyczący tych funkcji.
Aby korzystać z nowych funkcji środowiska J2SE 5.0, należy pracować z projektem z włączonym poziomem zgodności z wersją 5.0. Nowe projekty można łatwo oznaczyć jako zgodne z wersją 5.0 na pierwszej stronie kreatora Nowy > Projekt:
Dla lepszej kontroli poziom zgodności kompilatora można ustawić globalnie dla obszaru roboczego (Okna > Preferencje > Java > Kompilator) lub osobno dla każdego projektu (w menu kontekstowym projektu należy wybrać opcję Właściwości > Kompilator Java). Projekty o różnych poziomach zgodności mogą współistnieć w obrębie obszaru roboczego i zależeć od siebie nawzajem. Istnieje również możliwość dostosowania rodzajów ostrzeżeń i błędów generowanych przez kompilator dla każdego z projektów przy użyciu opcji Właściwości > Kompilator Java > Błędy/ostrzeżenia > Opcje narzędzia J2SE 5.0.
Typy ogólne umożliwiają obiektom tej samej klasy działać bezpiecznie na obiektach innych typów.
Pozwalają zapewnić na etapie kompilacji, że obiekt List<String>
zawsze będzie
zawierał wartość typu String
, a obiekt List<Integer>
zawsze będzie zawierał wartość typu Integer
.
W każdym miejscu, gdzie środowisko Eclipse obsługuje typ inny niż ogólny, może obsługiwać również typ ogólny:
Środowisko Eclipse 3.1 udostępnia nowe opcje dla wyszukiwania odwołań do typów ogólnych. Poniżej przedstawiono przykład:
List<Integer>
oraz użycie
opcji Szukaj > Odwołania > Projekt spowoduje
wyróżnienie typu List we wszystkich czterech wierszach:
Opcja Filtruj niezgodne pozostawia tylko odwołania do typów, które są zgodne z wybranym typem ze względu na przypisanie:
Opcja Filtruj niedokładne pozostawia tylko odwołania do typów o identycznej sygnaturze:
Adnotacje służą do dołączania do źródła Java metadanych dotyczących sposobu używania i dokumentowania typów i metod Java,
dzięki czemu mogą one wpływać na kompilację lub mogą być przedmiotem zapytań w czasie wykonywania.
Na przykład adnotacja @Override
wyzwoli ostrzeżenie kompilatora,
jeśli metoda z tą adnotacją nie przesłania metody w nadklasie:
Wszystkie operacje dopuszczalne dla typu Java są również dopuszczalne dla adnotacji:
Bardzo przydatną adnotacją z pełną obsługą w środowisku Eclipse jest adnotacja @SuppressWarnings
.
Jako przykład może posłużyć metoda private, która w danym momencie nie jest używana, ale
raczej nie powinna zostać usunięta:
@SuppressWarnings
:
foo
:
Wyliczenia są typami, których instancje są tworzone w czasie wykonywania ze znanym, skończonym zbiorem obiektów:
Ponownie wszystkie operacje dopuszczalne dla klasy Java są dopuszczalne dla wyliczenia:
Automatyczne pakowanie i odpakowywanie pozwala zachować przejrzystość składni, gdy typy podstawowe są przypisywane do odwołań do obiektów lub z nich pobierane:
Funkcje modyfikowania kodu źródłowego środowiska Eclipse obsługują automatyczne pakowanie, dostarczając poprawne typy dla nowych zmiennych lokalnych oraz poprawne opcje asystenta kodu. Dla łatwiejszego zrozumienia kodu możliwe jest również oznaczanie wystąpień automatycznego pakowania oraz odpakowywania jako ostrzeżeń kompilacji (Okna > Preferencje > Java > Kompilator > Błędy/ostrzeżenia > Opcje narzędzia J2SE 5.0 > Konwersje pakowania i wypakowywania) lub wyróżnianie ich przy użyciu funkcji kolorowania składni (Okna > Preferencje > Java > Edytor > Kolorowanie składni > Java > Wyrażenia automatycznie odpakowane):
Dla częstych przypadków wykonywania kolejnych działań na poszczególnych elementach tablicy lub kolekcji środowisko J2SE 5.0 oferuje nową, bardziej przejrzystą składnię. Środowisko Eclipse 3.1 udostępnia szablon kodu "foreach" z możliwością automatycznego odgadnięcia kolekcji, która ma być iterowana:
Środowisko Eclipse 3.1 udostępnia również opcję szybkiej asysty Przekształć w
rozszerzoną pętlę for służącą do aktualizowania w miarę możliwości stylu pętli
for
z wersji 1.4.
Wszystkie pozostałe funkcje środowiska J2SE 5.0 są obsługiwane przez narzędzia środowiska Eclipse do edytowania, wyszukiwania oraz modyfikowania kodu: