Versiosta 3.1 lähtien Eclipse sisältää täyden tuen J2SE 5.0:n (koodinimeltään "Tiger") uusille ominaisuuksille. Et ehkä huomaa tukea ollenkaan, sillä kaikki toiminnot, joiden odotat toimivan J2SE 1.4:ää varten, esimerkiksi muokkaus, käännös, vianmääritys, pikakorjaukset, koodinparannus, lähdetoiminnot ja haku, toimivat saumattomasti J2SE 5.0:n uusien tyyppien ja syntaksin kanssa. Tässä dokumentissa esitellään joitakin kiinnostavimmista toiminnoista, joita Eclipsen käyttäjät löytävät käyttäessään J2SE 5.0:aa.
Kun halutaan kehittää J2SE 5.0:n kanssa yhteensopivaa koodia, tarvitaan J2SE 5.0 Java Runtime Environment (JRE) -ympäristö.
Jos käynnistät Eclipsen ensimmäistä kertaa käyttämällä J2SE 5.0 JRE -ympäristöä, se käyttää sitä oletusarvon mukaan.
Muussa tapauksessa sinun on rekisteröitävä se Eclipseen oletusasetussivulla
Java > Asennetut JRE-ympäristöt.
Tässä dokumentissa esitellään joitakin J2SE 5.0:n uusia kielen ominaisuuksia hyvin lyhyesti, mutta dokumentti ei ole näiden ominaisuuksien varsinainen opas. Lisätietoja on täällä.
Jos haluat käyttää uusia J2SE 5.0:n ominaisuuksia, käytä projektia, jolle on otettu käyttöön 5.0-yhteensopivuustaso ja version 5.0 JRE-ympäristö.
Uudet projektit ovat automaattisesti 5.0-yhteensopivia, kun
Ohjatun uuden Java-projektin luontitoiminnon ensimmäisellä sivulla valitaan version 5.0 JRE-ympäristö:
Tarkempaa ohjausta varten kääntäjän yhteensopivuustaso voidaan määrittää joko yleisesti työtilaa varten (oletusasetussivulla
Java > Kääntäjä) tai yksitellen kutakin projektia varten (valitsemalla projektin pikavalikosta Ominaisuudet > Java-kääntäjä).
Työtilassa voi olla toisistaan riippuvaisia projekteja, joilla on eri yhteensopivuustasot.
Valitsemalla Ominaisuudet > Java-kääntäjä > Virheet/varoitukset > J2SE 5.0 -asetukset voit myös määrittää, millaisia kääntäjän varoituksia ja virheitä kutakin projektia varten tuotetaan.
Yleistyyppien avulla samaa luokkaa olevat objektit voivat turvallisesti käyttää erityyppisiä objekteja.
Niiden avulla voidaan käännösvaiheessa olla varmoja, että
List<String>
sisältää aina String
-objekteja ja List<Integer>
sisältää aina Integer
-objekteja.
Eclipse-ympäristössä on uusia vaihtoehtoja yleistyyppien viittauksien hakua varten. Tutki tätä esimerkkiä:
List<Integer>
ja valitset
Hae > Viitteet > Projekti, List-tyypit näkyvät korostettuina kaikilla neljällä rivillä:
Suodata yhteensopimattomat jättää vain viittaukset tyyppeihin, jotka ovat osoituksen kannalta yhteensopivia valitun tyypin kanssa:
Suodata epätarkka jättää vain tyyppiviittaukset, joilla on tarkalleen sama allekirjoitus:
Huomautuksilla liitetään metatietoja siitä, kuinka Java-tyyppejä käytetään ja kuinka ne dokumentoidaan Java-lähteelle, ja ne voivat siten vaikuttaa käännökseen tai niistä voidaan tehdä kysely ajon aikana. Esimerkiksi @Override
laukaisee kääntäjän varoituksen, jos huomautuksella varustettu metodi ei korvaa yliluokan metodia:
@SuppressWarnings
on hyvin hyödyllinen huomautus, jolla on täysi tuki Eclipsessä.
Olemassa on esimerkiksi yksityinen metodi, joka on käyttämättömänä mutta jota et halua poistaa:
@SuppressWarnings
-huomautuksen lisäys:
foo
:
Luetteloinnit ovat tyyppejä, jotka tunnettu, rajallinen objektien joukko luo ajon aikana:
Automaattisen lokeroinnin ja lokeroinnin purun ansiosta saadaan sujuvaa syntaksia, kun alkeistyyppejä osoitetaan Object-viittauksille tai noudetaan Object-viittauksista:
Eclipsen lähteen käsittelytoiminnot käsittelevät automaattista lokerointia saumattomasti antaen oikeat tyypit uusille paikallismuuttujille ja oikeat koodinhallinnan aputoiminnot.
Koodin ymmärtämiseksi automaattinen lokerointi ja lokeroinnin purku voidaan myös merkitä kääntäjän varoituksiksi (Mahdolliset ohjelmointihäiriöt -osassa oletusasetussivulla
Java > Kääntäjä > Virheet/varoitukset) tai korostaa käyttämällä syntaksin väritystä (Java > Automaattisen lokeroinnin (ja lokeroinnin poistamisen) lausekkeet -osassa oletusasetussivulla
Java > Muokkausohjelma > Syntaksin väritys):
J2SE 5.0:ssä on uusi, selkeämpi syntaksi sellaista yleistä tapausta varten, jossa jokaista taulukon tai kokoelman elementtiä käsitellään vuorotellen. Eclipse-ympäristön "foreach"-koodimallipohja arvaa toistettavan kokoelman automaattisesti:
Eclipse-ympäristössä on myös "Muunna parannetuksi silmukkaa varten" -pika-apu for
-silmukoiden päivittämiseksi 1.4-tyyliin aina, kun mahdollista.