™ 8e édition Cay S. Horstmann et Gary Cornell Au cœur de Java ™ volume 1 Notion

™ 8e édition Cay S. Horstmann et Gary Cornell Au cœur de Java ™ volume 1 Notions fondamentales Le présent ouvrage est la traduction de Core Java, vol. I Fundamentals, 8e éd., de Cay Hortsmann et Gary Cornell, publié par Pearson Education Inc./Prentice Hall, Copyright © 2008 Sun Microsystem Inc. Authorized translation from the English language edition, entitled CORE JAVA, VOL. I FUNDA- MENTALS, 8th Edition By CAY HORTSMANN and GARY CORNELL, published by Pearson Education Inc., publishing as Prentice Hall, Copyright © 2008 Sun Microsystem Inc., 4150 Network Circle, Santa Clara, California 95054 USA. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc. French language edition published by PEARSON EDUCATION FRANCE, Copyright © 2008 Tous droits réservés. Aucune représentation ou reproduction, même partielle, autre que celles prévues à l’article L. 122-5 2˚ et 3˚ a) du code de la propriété intellectuelle ne peut être faite sans l’autorisation expresse de Pearson Education France ou, le cas échéant, sans le respect des modalités prévues à l’article L. 122-10 dudit code. Publié par Pearson Education France 47 bis, rue des Vinaigriers 75010 PARIS Tél. : 01 72 74 90 00 Mise en pages : TyPAO Titre original : Core Java, volume 1 Fundamentals Traduit de l’américain par : Christiane Silhol et Nathalie Le Guillou de Penanros ISBN original : 0-13-235476-4 Copyright © 2008 Sun Microsystems, Inc. Tous droits réservés Sun Microsystems Inc. 901 San Antonio Road, Palo Alto, California 94303 USA Copyright© 2009 Pearson Education France ISBN : 978-2-7440-4080-1 Table des matières Introduction .................................................................................................................................. 1 Avertissement au lecteur .......................................................................................................... 1 A propos de ce livre ................................................................................................................. 2 Conventions .............................................................................................................................. 4 Exemples de code ..................................................................................................................... 5 Chapitre 1. Une introduction à Java ......................................................................................... 7 Java, plate-forme de programmation ........................................................................................ 7 Les termes clés du livre blanc de Java ...................................................................................... 8 Simplicité ............................................................................................................................ 8 Orienté objet ....................................................................................................................... 9 Compatible avec les réseaux ............................................................................................... 10 Fiabilité ............................................................................................................................... 10 Sécurité ............................................................................................................................... 10 Architecture neutre ............................................................................................................. 11 Portabilité ........................................................................................................................... 12 Interprété ............................................................................................................................. 12 Performances élevées .......................................................................................................... 12 Multithread ......................................................................................................................... 13 Java, langage dynamique .................................................................................................... 13 Les applets Java et Internet ...................................................................................................... 14 Bref historique de Java ............................................................................................................. 15 Les idées fausses les plus répandues concernant Java .............................................................. 17 Chapitre 2. L’environnement de programmation de Java ...................................................... 21 Installation du kit de développement Java ................................................................................ 21 Télécharger le JDK ............................................................................................................. 22 Configurer le chemin d’exécution ...................................................................................... 24 Installer la bibliothèque et la documentation ...................................................................... 26 Installer les exemples de programmes ................................................................................ 26 Explorer les répertoires de Java .......................................................................................... 27 IV Table des matières Choix de l’environnement de développement .......................................................................... 28 Utilisation des outils de ligne de commande ............................................................................ 28 Conseils pour la recherche d’erreurs .................................................................................. 30 Utilisation d’un environnement de développement intégré ...................................................... 31 Localiser les erreurs de compilation ................................................................................... 34 Exécution d’une application graphique .................................................................................... 35 Elaboration et exécution d’applets ........................................................................................... 37 Chapitre 3. Structures fondamentales de la programmation Java ......................................... 41 Un exemple simple de programme Java ................................................................................... 42 Commentaires .......................................................................................................................... 45 Types de données ..................................................................................................................... 45 Entiers ................................................................................................................................. 46 Types à virgule flottante ...................................................................................................... 47 Le type char ...................................................................................................................... 48 Type booléen ....................................................................................................................... 49 Variables ................................................................................................................................... 50 Initialisation des variables ....................................................................................................... 51 Constantes ........................................................................................................................... 52 Opérateurs ................................................................................................................................ 52 Opérateurs d’incrémentation et de décrémentation ............................................................ 54 Opérateurs relationnels et booléens .................................................................................... 54 Opérateurs binaires ............................................................................................................. 55 Fonctions mathématiques et constantes .............................................................................. 56 Conversions de types numériques ...................................................................................... 57 Transtypages ....................................................................................................................... 58 Parenthèses et hiérarchie des opérateurs ............................................................................ 58 Types énumérés .................................................................................................................. 59 Chaînes ..................................................................................................................................... 60 Sous-chaînes ....................................................................................................................... 60 Concaténation ..................................................................................................................... 60 Les chaînes sont inaltérables .............................................................................................. 61 Test d’égalité des chaînes ................................................................................................... 62 Points de code et unités de code ......................................................................................... 63 L’API String .................................................................................................................... 64 Lire la documentation API en ligne .................................................................................... 66 Construction de chaînes ...................................................................................................... 69 Entrées et sorties ....................................................................................................................... 70 Lire les caractères entrés ..................................................................................................... 70 Mise en forme de l’affichage .............................................................................................. 72 Entrée et sortie de fichiers .................................................................................................. 76 Table des matières V Flux d’exécution ....................................................................................................................... 78 Portée d’un bloc .................................................................................................................. 78 Instructions conditionnelles ................................................................................................ 79 Boucles .............................................................................................................................. 82 Boucles déterminées ........................................................................................................... 86 Sélections multiples — l’instruction switch .................................................................... 90 Interrompre le flux d’exécution .......................................................................................... 92 Grands nombres ....................................................................................................................... 94 Tableaux ................................................................................................................................... 96 La boucle "for each" ........................................................................................................... 97 Initialiseurs de tableaux et tableaux anonymes .................................................................. 98 Copie des tableaux .............................................................................................................. 99 Paramètres de ligne de commande ..................................................................................... 101 Tri d’un tableau ................................................................................................................... 102 Tableaux multidimensionnels ............................................................................................. 105 Tableaux irréguliers ............................................................................................................ 108 Chapitre 4. Objets et classes ...................................................................................................... 111 Introduction à la programmation orientée objet ....................................................................... 112 Les classes .......................................................................................................................... 113 Les objets ............................................................................................................................ 113 Identification des classes .......................................................................................................... 114 Relations entre les classes ................................................................................................... 115 Utilisation des classes existantes .............................................................................................. 116 Objets et variables objet ..................................................................................................... 117 La classe GregorianCalendar de la bibliothèque Java ..................................................... 120 Les méthodes d’altération et les méthodes d’accès ............................................................ 121 Définition de vos propres classes ............................................................................................. 128 Une classe Employee .......................................................................................................... 128 Travailler avec plusieurs fichiers source ............................................................................. 131 Analyser la classe Employee ............................................................................................. 132 Premiers pas avec les constructeurs .................................................................................... 132 Paramètres implicites et explicites ...................................................................................... 134 Avantages de l’encapsulation ............................................................................................. 135 Privilèges d’accès fondés sur les classes ............................................................................ 137 Méthodes privées ................................................................................................................ 137 Champs d’instance final .................................................................................................. 138 Champs et méthodes statiques .................................................................................................. 138 Champs statiques ................................................................................................................ 138 Constantes statiques ............................................................................................................ 139 Méthodes statiques ............................................................................................................. 140 VI Table des matières Méthodes "factory" ............................................................................................................. 141 La méthode main ............................................................................................................... 141 Paramètres des méthodes ......................................................................................................... 144 Construction d’un objet ........................................................................................................... 150 Surcharge ............................................................................................................................ 150 Initialisation des champs par défaut ................................................................................... 151 Constructeurs par défaut ..................................................................................................... 151 Initialisation explicite de champ ......................................................................................... 152 Noms de paramètres ........................................................................................................... 153 Appel d’un autre constructeur ............................................................................................ 153 Blocs d’initialisation ........................................................................................................... 154 Destruction des objets et méthode finalize ......................................................................... 158 Packages ................................................................................................................................... 158 Importation des classes ....................................................................................................... 159 Imports statiques ................................................................................................................. 161 Ajout d’une classe dans un package ................................................................................... 161 Visibilité dans un package .................................................................................................. 164 Le chemin de classe .................................................................................................................. 165 Définition du chemin de classe ........................................................................................... 168 Commentaires pour la documentation ...................................................................................... 168 Insertion des commentaires ................................................................................................ 169 Commentaires de classe ...................................................................................................... 169 Commentaires de méthode ................................................................................................. 170 Commentaires de champ .................................................................................................... 171 Commentaires généraux ..................................................................................................... 171 Commentaires de package et d’ensemble ........................................................................... 172 Extraction des commentaires .............................................................................................. 172 Conseils pour la conception de classes .................................................................................... 173 Chapitre 5. L’héritage ................................................................................................................. 177 Classes, superclasses et sous-classes ........................................................................................ 178 Hiérarchie d’héritage .......................................................................................................... 184 Polymorphisme ................................................................................................................... 185 Liaison dynamique ............................................................................................................. 186 Empêcher l’héritage : les classes et les méthodes final .................................................. 189 Transtypage ......................................................................................................................... 190 Classes abstraites ................................................................................................................ 192 Accès protégé ..................................................................................................................... 197 Object : la superclasse cosmique .............................................................................................. 198 La méthode equals ........................................................................................................... 198 Test d’égalité et héritage ..................................................................................................... 199 Table des matières VII La méthode hashCode ....................................................................................................... 202 La méthode toString ....................................................................................................... 204 Listes de tableaux génériques ................................................................................................... 210 Accéder aux éléments d’une liste de tableaux .................................................................... 212 Compatibilité entre les listes de tableaux brutes et typées ................................................. 216 Enveloppes d’objets et autoboxing ........................................................................................... 217 Méthodes ayant un nombre variable de paramètres ........................................................... 220 Classes d’énumération .............................................................................................................. 221 Réflexion .................................................................................................................................. 223 La classe Class ................................................................................................................. 224 Introduction à l’interception d’exceptions .......................................................................... 226 La réflexion pour analyser les caractéristiques d’une classe .............................................. 227 La réflexion pour l’analyse des objets à l’exécution .......................................................... 232 La réflexion pour créer un tableau générique ..................................................................... 237 Les pointeurs de méthodes ................................................................................................. 240 Conseils pour l’utilisation de l’héritage ................................................................................... 244 Chapitre 6. Interfaces et classes internes ................................................................................ 247 Interfaces .................................................................................................................................. 248 Propriétés des interfaces ..................................................................................................... 253 Interfaces et classes abstraites ............................................................................................ 254 Clonage d’objets ....................................................................................................................... 255 Interfaces et callbacks .............................................................................................................. 261 Classes internes ........................................................................................................................ 264 Accéder à l’état d’un objet à l’aide d’une classe interne .................................................... 265 Règles particulières de syntaxe pour les classes internes ................................................... 268 Utilité, nécessité et sécurité des classes internes ................................................................ 269 Classes internes locales ...................................................................................................... 271 Accès aux variables final à partir de méthodes externes ................................................. 272 Classes internes anonymes ................................................................................................. 274 Classes internes statiques .................................................................................................... 276 Proxies ...................................................................................................................................... 280 Propriétés des classes proxy ............................................................................................... 284 Chapitre 7. Programmation graphique .................................................................................... 287 Introduction à Swing ................................................................................................................ 288 Création d’un cadre .................................................................................................................. 291 Positionnement d’un cadre ....................................................................................................... 294 Propriétés des cadres .......................................................................................................... 296 Déterminer une taille de cadre adéquate ............................................................................. 296 Affichage des informations dans un composant ....................................................................... 300 VIII Table des matières Formes 2D ................................................................................................................................ 305 Couleurs ................................................................................................................................... 312 Texte et polices ......................................................................................................................... 315 Affichage d’images .................................................................................................................. 323 Chapitre 8. Gestion des événements .......................................................................................... 327 Introduction à la gestion des événements ................................................................................. 327 Exemple : gestion d’un clic de bouton ............................................................................... 330 Etre confortable avec les classes internes ........................................................................... 334 Créer des écouteurs contenant un seul appel de méthode .................................................. 337 Exemple : modification du "look and feel" ......................................................................... 337 Classes adaptateurs ............................................................................................................. 341 Actions ..................................................................................................................................... 344 Evénements de la souris ..................................................................................................... 352 Hiérarchie des événements AWT ............................................................................................. 359 Evénements sémantiques et de bas niveau ......................................................................... 361 Chapitre 9. Swing et les composants d’interface utilisateur ................................................... 365 Swing et l’architecture Modèle-Vue-Contrôleur ...................................................................... 366 Modèles de conception ....................................................................................................... 366 L’architecture Modèle-Vue-Contrôleur .............................................................................. 367 Une analyse Modèle-Vue-Contrôleur des boutons Swing .................................................. uploads/S4/ au-coeur-de-java-6-volume-1-notions-fondamentales-8eme-edition.pdf

  • 22
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Mai 09, 2021
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 10.5312MB