Fra og med versjon 3.1 har Eclipse full støtte for de nye funksjonene i J2SE 5.0 (kodenavn "Tiger"). En av de viktigste konsekvensene av denne støtten er at du kanskje ikke engang merker den. Alt du forventer skal virke for J2SE 1.4 -- inkludert redigering, kompilering, feilsøking, hurtigrettelser, refaktorisering, kildehandlinger, søk osv -- virker helt glatt med J2SE 5.0s nye typer og syntaks. I dette dokumentet introduserer vi noen av de mer interessante funksjonene som Eclipse-brukere vil finne når de arbeider med J2SE 5.0.
For å utvikle kode som samsvarer med J2SE 5.0, trenger du et J2SE 5.0 Java Runtime Environment (JRE).
Hvis du starter Eclipse for første gang med et J2SE 5.0 JRE, vil det bruke det som standard.
Ellers må du bruke preferansesiden
Java > Installerte JREer
for å registrere den i Eclipse.
Dette dokumentet gir en svært kort introduksjon av noen av de nye språkfunksjonene i J2SE 5.0, men det gis ikke grundig opplæring i disse funksjonene. Du finner mer informasjon her.
For å bruke de nye J2SE 5.0-funksjonene, må du arbeide på et prosjekt som har
5.0-samsvarsnivå aktivert, og som har en 5.0 JRE.
Nye prosjekter får automatisk 5.0-samsvar når du velger en 5.0-JRE på første side av
veiviseren
Nytt Java-prosjekt:
For mer presis kontroll kan kompilatorens samsvarsnivå defineres globalt for et
arbeidsområde (med preferansesiden
Java > Kompilator) eller enkeltvis for
hvert prosjekt (velg Egenskaper>
Java-kompilator fra prosjektets hurtigmeny).
Prosjekter med forskjellige samsvarsnivåer kan eksistere sammen i arbeidsområdet og være avhengige av hverandre.
Du kan også finjustere hvilke typer kompilatoradvarsler og -feil som produseres for hvert prosjekt, ved hjelp av
Egenskaper > Java-kompilator > Feil/advarsler > J2SE 5.0-alternativer.
Generiske typer gjør det mulig for typer av samme klasse å virke trygt på objekter av forskjellige typer.
For eksempel gjør de det mulig ved kompilering å sikre at
Liste<Streng>
alltid inneholder strenger
, og at
List<Heltall>
alltid inneholder heltall
.
Eclipse har nå nye alternativer for søk etter referanser til generiske typer. Se på dette eksempelet:
List<Heltall>
og bruker
Søk > Referanser > Prosjekt , vil listetypene utheves på alle fire linjer:
Filtrer inkompatible etterlater bare referanser til typer som er tildelingskompatible med den valgte typen:
Filtrer unøyaktige etterlater bare typereferanser med nøyaktig samme signatur.
Annotasjoner knytter metadata om hvordan Java-typer og -metoder brukes og dokumenteres, til Java-kilde, og kan så påvirke
kompileringen eller spørres ved kjøretid. For eksempel vil @Override
utløse en kompilatoradvarsel hvis den annoterte metoden ikke overstyrer
en metode i en superklasse:
En svært nyttig annotasjon med full støtte i Eclipse er @SuppressWarnings
.
For eksempel kan du vurdere en privat metode som er ubrukt, men som du helst ikke vil slette:
@SuppressWarnings
-annotasjon:
foo
:
Oppregninger er typer som det lages forekomster av ved kjøretid av et kjent, endelig sett med objekter:
Autoruting og autoavruting muliggjør elegant syntaks når primitive typer tildeles til eller hentes fra objektreferanser:
Eclipses kildemanipuleringsfunksjoner håndterer autoruting elegant og gir riktige typer til nye lokale variabler og riktig kodehjelp.
For kodeforståelse er det også mulig å flagge forekomster av autoruting eller
autoavruting som kompilatoradvarsler (ved hjelp av delen Potensielle
programmeringsproblemer på preferansesiden
Java > Kompilator > Feil/advarsler), eller
utheve dem med syntaksfarger (via delen Java > Auto(av)rutede uttrykk
på preferansesiden
Java > Redigeringsprogram > Syntaksfarger.
For det vanlige tilfellet der hvert element i en matrise eller samling stilles inn i tur og orden, har J2SE 5.0 en ny, klarere syntaks. Eclipse har en "foreach"-kodemal som automatisk kan gjette hvilken samling som skal gjentas:
Eclipse har også en hurtighjelp kalt "Konverter til utvidet for-sløyfe" som
oppgraderer for
-sløyfer av 1.4-stil når det er mulig.