PROGRAMMATION JAVA Structures de données en Java John R. HUBBARD 384 pages EdiS

PROGRAMMATION JAVA Structures de données en Java John R. HUBBARD 384 pages EdiScience, 2003. Programmer en C++ 2e édition John R. HUBBARD 448 pages EdiScience, 2002. Programmer en Java John R. HUBBARD 208 pages EdiScience, 2002. PROGRAMMATION JAVA John R. HUBBARD Professeur de mathématiques et d’informatique à l’université de Richmond (Virginie, USA) Traduit de l’américain par Virginie Maréchal 2e édition Original edition copyright © 2004, 1999 by The McGraw-Hill Companies, Inc. All rights reserved. L’édition originale de cet ouvrage est parue sous le titre : Schaum’s Outline of Programming with Java, 2nd ed. © Dunod, Paris, 2005, pour l’édition française. Tous droits réservés. ISBN 2 10 048664 0 Jean-Marc Farinone a participé à l’adaptation française de cet ouvrage. Sommaire Avant-propos XI Chapitre 1 Les bases de Java 1 1.1 Le langage de programmation Java 1 1.2 Installation du kit de développement logiciel Java 2 1.3 Paramétrage de la variable Path 4 1.4 Création et exécution de votre premier programme Java 5 1.5 Composants principaux d’un programme Java simple 7 1.6 Variations du programme Hello World 8 1.7 Utilisation des arguments en ligne de commande 10 1.8 Rechercher et corriger les erreurs 13 1.9 Documentation Java 15 1.10 Commentaires et Javadoc 15 1.11 Entrée interactive des chaînes 18 1.12 Entrée numérique interactive 20 1.13 Types de données 22 Questions 22 Réponses 23 Exercices d’entraînement 24 Solutions 25 Chapitre 2 Les chaînes 28 2.1 La classe String 28 2.2 Méthodes de la classe String 29 2.3 Les sous-chaînes 32 2.4 La concaténation 35 2.5 Les objets et leurs références 35 2.6 L’opérateur d’égalité 36 2.7 Recherche d’une chaîne 38 2.8 Remplacement des caractères d’une chaîne 39 2.9 Représentation d’une valeur primitive dans une chaîne 40 2.10 Résumé des méthodes de la classe String 42 VI Programmation Java 2.11 La classe StringBuffer 43 2.12 Résumé des méthodes de la classe StringBuffer 48 Questions 48 Réponses 49 Exercices d’entraînement 49 Solutions 50 Chapitre 3 La sélection 54 3.1 L’instruction if 54 3.2 L’instruction if...else 56 3.3 La combinaison if...else if 57 3.4 Conditionnelles imbriquées 58 3.5 Les instructions composées 63 3.6 Les opérateurs 64 3.7 Ordre d’évaluation 65 3.8 Variables booléennes 67 3.9 L’opérateur d’expression conditionnelle 68 3.10 Opérateurs d’affectation 69 3.11 Opérateurs d’incrément et de décrément 71 3.12 Les affectations chaînées 72 3.13 L’instruction switch 73 Questions 75 Réponses 76 Exercices d’entraînement 77 Solutions 80 Chapitre 4 L’itération 90 4.1 L’instruction for 90 4.2 L’instruction while 94 4.3 Quelques manipulations de nombres 96 4.4 L’instruction do...while 99 4.5 D’autres manipulations de nombres 101 4.6 Les boucles imbriquées 104 4.7 Les boucles contrôlées par une sentinelle 109 4.8 Les boucles infinies 111 Questions 112 Réponses 114 Exercices d’entraînement 116 Solutions 118 Sommaire VII Chapitre 5 Les méthodes 122 5.1 La méthode main() 122 5.2 Quelques exemples simples 123 5.3 Les variables locales 124 5.4 Les méthodes qui appellent d’autres méthodes 127 5.5 Les méthodes qui s’appellent elles-mêmes 129 5.6 Les méthodes booléennes 131 5.7 La surcharge 132 Questions 133 Réponses 133 Exercices d’entraînement 134 Solutions 137 Chapitre 6 Les classes et les objets 142 6.1 Les classes 142 6.2 Utilisation des paquetages 146 6.3 Les déclarations 147 6.4 Les modificateurs 150 6.5 Les constructeurs 154 6.6 Les objets et les références 157 6.7 Les constructeurs de copie 160 6.8 Les constructeurs par défaut 162 6.9 Les invariants de classe 164 6.10 Identité, égalité et équivalence 167 6.11 D’autres invariants de classe 169 6.12 Les classes d’encapsulation 173 Questions 176 Réponses 177 Exercices d’entraînement 180 Solutions 182 Chapitre 7 Les tableaux 190 7.1 Les tableaux d’entiers 190 7.2 Copie d’un tableau 192 7.3 Tableaux de chaînes et autres objets 194 7.4 La classe java.util.Arrays 197 7.5 Quelques applications 201 7.6 Les tableaux bidimensionnels 205 Questions 208 Réponses 209 VIII Programmation Java Exercices d’entraînement 210 Solutions 211 Exercices d’entraînement supplémentaires 213 Chapitre 8 Composition et héritage 217 8.1 La composition 217 8.2 Les classes récursives 222 8.3 L’héritage 226 8.4 La classe Object 228 8.5 La méthode equals() 230 8.6 Extension d’une classe 231 8.7 Remplacement des champs et des méthodes 234 8.8 Le mot-clé super 236 8.9 Héritage et composition 237 8.10 Les hiérarchies de classes 238 Questions 242 Réponses 242 Exercices d’entraînement 244 Solutions 246 Chapitre 9 Les interfaces 261 9.1 Propriétés des interfaces 261 9.2 L’interface Comparable 262 9.3 Types et polymorphisme 265 9.4 Classes abstraites 267 Questions 270 Réponses 270 Exercices d’entraînement 270 Solutions 272 Chapitre 10 Collections 278 10.1 Le framework de collections Java 278 10.2 Les listes liées 279 10.3 L’interface java.util.Collection 281 10.4 Les itérateurs 284 10.5 Méthode java.util.Arrays.asList() 286 Questions 287 Réponses 287 Exercices d’entraînement 288 Solutions 289 Sommaire IX Chapitre 11 Les exceptions 290 11.1 La hiérarchie de classes Throwable 290 11.2 Lancement d’une exception non vérifiée 291 11.3 Attraper les exceptions non vérifiées 292 11.4 Attraper les exceptions vérifiées 293 11.5 L’instruction générique try 295 Questions 297 Réponses 297 Exercices d’entraînement 297 Solutions 298 Chapitre 12 Fichiers et flux 301 12.1 Les classes d’entrées/sorties 301 12.2 Traitement des fichiers texte 303 12.3 Sérialisation des objets 306 12.4 Sérialisation des objets à l’aide des champs transient 312 12.5 Fichiers à accès aléatoire 315 Questions 319 Réponses 319 Exercices d’entraînement 320 Solutions 322 Chapitre 13 Les graphiques 328 13.1 La hiérarchie des classes graphiques 328 13.2 La classe javax.swing.JFrame 328 13.3 La classe javax.swing.JLabel 332 13.4 La classe javax.swing.JPanel 333 13.5 La classe java.awt.Color 335 13.6 Les gestionnaires de présentation 338 13.7 Interface java.awt.event.ActionListener 341 13.8 La classe javax.swing.JTextField 342 Questions 344 Réponses 344 Exercices d’entraînement 345 Solutions 347 Exercices d’entraînement supplémentaires 350 Chapitre 14 Les applets 351 14.1 Un applet HelloWorld 351 14.2 La classe javax.swing.JApplet 353 X Programmation Java 14.3 Le cycle de vie d’un applet 355 14.4 La classe Thread 357 14.5 L’interface Runnable 358 Questions 360 Réponses 360 Exercices d’entraînement supplémentaires 361 Annexes 15 A. Les nombres informatiques 362 A.1 Les nombres mathématiques 362 A.2 Les approximations décimales 363 A.3 Les nombres informatiques 364 A.4 Les entiers et les nombres à virgule flottante 364 A.5 Le dépassement de capacité des entiers 366 A.6 L’infini et les constantes NaN 367 A.7 Les numéraux binaires 371 A.8 Les numéraux hexadécimaux 371 A.9 Opérateurs bit à bit 373 B. L’Unicode 375 Références 381 Bibliographie 381 Webographie 382 Index 383 Avant-propos Comme tous les livres de notions fondamentales proposés dans la série Schaum’s, celui-ci est en premier lieu destiné aux personnes qui souhaitent étudier seules, de préférence en complément d’un cours sur les bases de la programmation en Java. Cet ouvrage comprend plus de 300 exemples et exercices d’entraînement. L’auteur est convaincu que la programmation s’apprend par la pratique. C’est pourquoi il propose ici un large éventail d’exemples bien structurés et accompagnés d’explications précises. Le code source des exemples et les exercices peuvent être téléchargés depuis le site web de l’auteur http://www.mathcs.richmond.edu/~hubbard/books/. Toutes les corrections et les addenda seront égale- ment disponibles sur ce site. JOHN R. HUBBARD Richmond, Virginie Chapitre 1 Les bases de Java Ce chapitre présente les notions de base du langage de programmation Java et décrit ses fonctionnalités les plus importantes. Il vous explique comment télécharger le kit de développement logiciel Java 2 (J2SDK ou Java 2 Software Development Kit) mis au point par Sun Microsystems et comment créer et exécuter quelques programmes Java simple. Il vous permet également de vous familiariser avec les notions de variable et de types de données. 1.1 LE LANGAGE DE PROGRAMMATION JAVA Le langage de programmation Java a été mis au point par James Gosling chez Sun Microsystems au début des années 1990 et signifie café en argot américain. L’essor du Web a incité les développeurs à améliorer ce langage, il a été enrichi et est devenu très populaire entre autre pour la programmation. Ce succès est dû en partie au fait qu’il ne soit lié à aucune plate-forme. Concrètement, cela signifie que le programme compilé peut être exécuté sur tous les ordinateurs actuellement disponibles, ou pres- que. Cette indépendance distingue Java de la plupart des langages de programmations qui ont recours à des compilateurs différents selon le système d’exploitation utilisé. Par exemple, un programme en C++ compilé sur une machine UNIX ne pourra pas être exécuté sous Windows. Outre l’efficacité et la flexibilité, le libre choix de la plate-forme permet également de stocker un pro- gramme compilé Java sur un seul serveur, programme qui peut ensuite être aisément téléchargé et exé- cuté par n’importe quelle machine cliente dans le cadre des systèmes en réseau. Java rend cette opération possible grâce à une compilation du code source en un langage binaire « pseudo-code » appelé bytecode. Le poste de travail client peut ensuite exécuter ce code grâce à un programme nommé machine virtuelle Java ou JVM. À l’instar du code source lui-même, le bytecode binaire n’est pas lié au système d’exploi- tation, ce qui signifie qu’un même fichier en bytecode peut être utilisé sur n’importe quel ordinateur. La plupart des navigateurs web (Netscape Communicator, Microsoft Internet Explorer, etc.) sont fournis avec une machine virtuelle. Par conséquent, lorsque vous uploads/Science et Technologie/ astuces-top-blogspot-com-livre-43.pdf

  • 17
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager