Depuis l'édition 3.1, Eclipse offre une prise en charge totale des nouvelles fonctionnalités de J2SE 5.0 (nom de code "Tiger"). L'une des conséquences les plus notables de cette prise en charge est que vous êtes susceptible de ne même pas la remarquer : tout ce qui à vos yeux doit fonctionner pour J2SE 1.4, y compris l'édition, la compilation, le débogage, les correctifs rapides, la propagation, les actions source, la recherche, et autres, fonctionne de manière transparente avec les nouveaux types et la syntaxe de J2SE 5.0. Dans ce document, nous allons vous présenter certaines des fonctionnalités les plus intéressantes dont les utilisateurs d'Eclipse vont pouvoir bénéficier en utilisant J2SE 5.0.
Pour être en mesure de développer du code compatible avec J2SE 5.0, vous devez disposer d'un environnement d'exécution Java (JRE) de type J2SE 5.0.
Si vous lancez Eclipse pour la première fois à l'aide de d'un JRE J2SE 5.0, il utilisera ce JRE par défaut.
Dans le cas contraire, il vous faudra utiliser la page de préférences
Java > JRE installés
afin de l'enregistrer avec Eclipse.
Le présent document présente brièvement certaines des nouvelles fonctions de langage offertes par J2SE 5.0, mais ne constitue pas à proprement parler un tutoriel pour ces fonctions. Pour plus d'informations, cliquez ici.
Pour utiliser les nouvelles fonctions de J2SE 5.0, vous devez travailler sur un projet dont le niveau de conformité 5.0 est activé et qui est doté d'un JRE 5.0.
Les nouveaux projets obtiendront automatiquement la conformité 5.0 lors de la sélection d'un JRE 5.0 sur la première page
de l'assistant Nouveau projet Java :
Pour garantir un contrôle plus précis,
le niveau de conformité du compilateur peut être défini de manière globale pour un espace de travail
(à l'aide de la page de préférences
Java > Compilateur)
ou de manière individuelle pour chaque projet (dans le menu contextuel du projet, sélectionnez Propriétés > Compilateur Java).
Les projets dont les niveaux de conformité diffèrent peuvent co-exister dans l'espace de travail et sont inter-dépendants.
Vous pouvez également définir précisément les types d'avertissements et d'erreurs de compilateur produits pour chaque projet à l'aide de Propriétés > Java Compiler > Erreurs/Avertissements > Options J2SE 5.0
Les types génériques permettent à des objets d'une même classe de fonctionner en toute sécurité sur des objets de différents types.
Ils autorisent, par exemple, l'assurance de génération qu'une Liste<Chaîne>
contient toujours des Chaînes
, et qu'une Liste<Entier>
contient toujours des Entier
.
Eclipse offre de nouvelles options lors de la recherche de références à des types génériques. Voici un exemple :
List<Entier>
et utiliser
Rechercher > Références > Projet
place les types de Listes en surbrillance sur les quatre lignes :
Filtrer incompatibles ne conserve que les références aux types dont l'affectation est compatible avec le type sélectionné :
Filtrer inexacts ne conserve que les références de type dont la signature est rigoureusement identique :
Les annotations joignent des méta-données portant sur la manière dont les types et les méthodes Java sont utilisés et documentés à destination de la source Java et peuvent dès lors avoir une incidence sur la compilation ou être interrogées lors de l'exécution. Par exemple, @Remplacer
déclenche un avertissement de compilateur si la méthode annotée ne remplace pas une méthode d'une super classe :
@SuppressWarnings
est une annotation très pratique totalement prise en charge sous Eclipse.
Imaginez par exemple une méthode privée actuellement inutilisée, mais que vous ne souhaitez pas supprimer :
@SuppressWarnings
:
foo
:
Les énumérations sont des types instanciés lors de l'exécution par un ensemble connu et limité d'objets :
L'autoboxing et l'unboxing automatique autorisent une syntaxe de qualité lorsque des types primitifs sont affectés à Références d'objets ou y sont récupérés :
Les fonctionnalités de manipulation de source d'Eclipse traitent l'autoboxing de manière transparente et fournissent les bons types aux nouvelles variables locales et aux assistants de code qui conviennent.
Pour une meilleure compréhension du code, il est également possible de signaler
les conversions d'emballage ou de déballage automatiques (autoboxing et autounboxing) sous forme d'avertissements de compilation
(à l'aide de la section Erreurs de programmation possibles de la page des préférences
Java > Compilateur > Erreurs/Avertissements),
ou de les mettre en évidence à l'aide de l'option Couleurs pour la syntaxe
(via la section
Java > Expressions Auto(un)boxed de la page des préférences
Java > Editeur > Couleurs pour la syntaxe) :
Pour fonctionner successivement sur chaque élément d'un tableau ou d'une collection (cas les plus courants), J2SE 5.0 permet le recours à une nouvelle syntaxe, que l'on pourrait qualifier de plus 'propre'. Eclipse fournit un modèle de code "foreach" qui peut identifier automatiquement la collection à itérer :
Eclipse fournit également un assistant rapide "Convertir en boucle for améliorée" qui permet de mettre à niveau les boucles for
de type 1.4 chaque fois que cela est possible.