xviii Préface
•Les valeurs de retour covariantes, qui permettent à une classe de redéfinir une
méthode d’une super-classe et de restreindre le type de retour de cette méthode.
•La déclaration import static, qui permet d’importer les membres statiques d’un type
dans l’espace de noms d’un programme.
Bien que toutes ces caractéristiques soient nouvelles avec Java 5.0, aucune d’entre elles
n’est suffisamment complexe pour justifier un chapitre indépendant. C’est pourquoi la
présentation de ces nouveautés est intégrée au chapitre 2.
Outre ces changements apportés au langage, Java 5.0 inclut également des modifications
apportées à la plate-forme Java. Parmi les améliorations les plus importantes, citons :
•Les classes de collection du paquetage java.util ont été converties en types généri-
ques, prenant ainsi en charge les collections à typage fort. Cet aspect est traité au
chapitre 4.
•Le paquetage java.util inclut également une nouvelle classe nommée Formatter.
Cette classe permet de produire du texte formaté à la façon de C, grâce aux méthodes
printf() et format(). Des exemples d’utilisation se trouvent au chapitre 5. L’entrée
du guide de référence consacrée à la classe java.util.Formatter présente ces
nombreuses options de formatage dans une table détaillée.
•Le nouveau paquetage java.util.concurrent inclut de nombreuses classes utilitaires
pour la programmation à threads multiples. Le chapitre 5 en propose des exemples
d’utilisation.
•Le paquetage java.lang possède trois nouveaux sous-paquetages : java.lang.annota-
tion, java.lang.instrument et java.lang.management. Ces paquetages prennent en
charge les annotations, ainsi que l’instrumentation, la gestion et le suivi d’un inter-
préteur Java en cours d’exécution. Bien que la présence de ces sous-paquetage au sein
du paquetage java.lang témoigne de leur importance, ils ne sont pas couramment
utilisés. Des exemples d’annotations se trouvent au chapitre 4 et un exemple simple
d’instrumentation et de gestion se trouve au chapitre 5.
•De nouveaux paquetages ont été ajoutés à la hiérarchie de javax.xml.
javax.xml.validation prend en charge la validation de documents à l’aide de
schémas. javax.xml.xpath prend en charge le langage de requête XPath.
javax.xml.namespace offre une prise en charge simplifiée des espaces de noms XML.
Des exemples de validation et d’utilisation de XPath se trouvent au chapitre 5.
Afin de faire place nette pour toutes ces nouveautés, je me suis permis d’élaguer certaines
parties des versions précédentes de ce livre. Ainsi, j’ai supprimé du guide de référence la
présentation des paquetages java.beans, java.beans.beancontext, java.security.acl et
org.ietf.jgss. Les standards liés aux JavaBeans ne se sont pas véritablement imposés dans
le noyau des API Java et semblent n’être pertinents que pour Swing et les API graphiques
apparentées. Ils n’ont donc plus leur place dans ce livre. Le paquetage java.security.acl
est obsolète depuis Java 1.2 et je me suis permis de le supprimer. Quant au paquetage
org.ietf.jgss, il n’intéresse que peu de lecteurs.
javaNut.book Page xviii Dimanche, 29. janvier 2006 10:04 22