Le livre de JAVA premier langage
Avec 109 exercices corrigés
14e édition
Anne Tasso
Éditions Eyrolles
Avant-propos - Organisation de l'ouvrage
1
Introduction - Naissance d'un programme
5
Construire un algorithme
5
Ne faire qu'une seule chose à la fois6
Exemple : l'algorithme du café chaud6
Vers une méthode8
Passer de l'algorithme au programme
9
Qu'est-ce qu'un ordinateur ?9
Un premier programme en Java, ou comment parler à un ordinateur14
Exécuter un programme
22
Compiler, ou traduire en langage machine22
Compiler un programme écrit en Java22
Les environnements de développement25
Le projet : Gestion d'un compte bancaire
26
Cahier des charges26
Les objets manipulés29
La liste des ordres29
Résumé
31
Exercices
32
Apprendre à décomposer une tâche en sous-tâches distinctes32
Observer et comprendre la structure d'un programme Java32
Écrire un premier programme Java33
Partie I
Outils et techniques de base
1 Stocker une information
37
La notion de variable
38
Les noms de variables38
La notion de type39
Les types de base en Java40
Comment choisir un type de variable plutôt qu'un autre ?44
Déclarer une variable45
L'instruction d'affectation
47
Rôle et mécanisme de l'affectation47
Déclaration et affectation48
Quelques confusions à éviter50
Échanger les valeurs de deux variables51
Les opérateurs arithmétiques
52
Exemple52
La priorité des opérateurs entre eux53
Le type d'une expression mathématique54
La transformation de types56
Calculer des statistiques sur des opérations bancaires
59
Cahier des charges59
Le code source complet62
Résultat de l'exécution63
Résumé
63
Exercices
64
Repérer les instructions de déclaration, observer la syntaxe d'une instruction64
Comprendre le mécanisme de l'affectation65
Comprendre le mécanisme d'échange de valeurs65
Calculer des expressions mixtes66
Comprendre le mécanisme du cast67
Le projet : Gestion d'un compte bancaire
67
Déterminer les variables nécessaires au programme67
2 Communiquer une information
69
La bibliothèque System
69
L'affichage de données
70
Affichage de la valeur d'une variable71
Affichage d'un commentaire71
Affichage de plusieurs variables71
Affichage de la valeur d'une expression arithmétique72
Affichage d'un texte73
La saisie de données
76
La classe Scanner77
Résumé
81
Exercices
82
Comprendre les opérations de sortie82
Comprendre les opérations d'entrée83
Observer et comprendre la structure d'un programme Java83
Le projet : Gestion d'un compte bancaire
84
Afficher le menu principal ainsi que ses options84
3 Faire des choix
85
L'algorithme du café chaud, sucré ou non85
Définition des objets manipulés86
Liste des opérations86
Ordonner la liste des opérations86
L'instruction if-else
89
Syntaxe d'if-else89
Comment écrire une condition90
Rechercher le plus grand de deux éléments92
Deux erreurs à éviter95
Des if-else imbriqués96
L'instruction switch, ou comment faire des choix multiples
98
Construction du switch98
Calculer le nombre de jours d'un mois donné99
Comment choisir entre if-else et switch ?102
Résumé
103
Exercices
104
Comprendre les niveaux d'imbrication104
Construire une arborescence de choix105
Manipuler les choix multiples, gérer les caractères106
Le projet : Gestion d'un compte bancaire
107
Accéder à un menu suivant l'option choisie107
4 Faire des répétitions
109
Combien de sucres dans votre café ?
110
La boucle do...while
111
Syntaxe112
Principes de fonctionnement112
Un distributeur automatique de café112
La boucle while
119
Syntaxe119
Principes de fonctionnement119
Saisir un nombre entier au clavier120
La boucle for
127
Syntaxe127
Principes de fonctionnement128
Rechercher le code Unicode d'un caractère de la table ASCII128
Quelle boucle choisir ?
131
Choisir entre une boucle do...while et une boucle while131
Choisir entre la boucle for et while132
Résumé
132
Exercices
134
Comprendre la boucle do...while134
Apprendre à compter, accumuler et rechercher une valeur135
Comprendre la boucle while, traduire une marche à suivre en programme Java135
Comprendre la boucle for136
Le projet : Gestion d'un compte bancaire
137
Rendre le menu interactif137
Partie II
Initiation à la programmation orientée objet
5 De l'algorithme paramétré à l'écriture de fonctions
141
Algorithme paramétré
142
Faire un thé chaud, ou comment remplacer le café par du thé142
Des fonctions Java prédéfinies
144
La bibliothèque Math144
Exemples d'utilisation146
Principes de fonctionnement147
Construire ses propres fonctions
149
Appeler une fonction150
Définir une fonction151
Les fonctions au sein d'un programme Java
156
Comment placer plusieurs fonctions dans un programme156
Les différentes formes d'une fonction158
Résumé
161
Exercices
162
Apprendre à déterminer les paramètres d'un algorithme162
Comprendre l'utilisation des fonctions162
Détecter des erreurs de compilation concernant les paramètres ou le résultat d'une fonction163
Écrire une fonction simple164
Le projet : Gestion d'un compte bancaire
166
Définir une fonction166
Appeler une fonction166
6 Fonctions, notions avancées
167
La structure d'un programme
167
La visibilité des variables169
Variable locale à une fonction170
Variable de classe173
Quelques précisions sur les variables de classe175
Les fonctions communiquent
178
Le passage de paramètres par valeur179
Le résultat d'une fonction181
Lorsqu'il y a plusieurs résultats à retourner183
Résumé
186
Exercices
187
Repérer les variables locales et les variables de classe187
Communiquer des valeurs à l'appel d'une fonction188
Transmettre un résultat à la fonction appelante189
Le projet : Gestion d'un compte bancaire
189
Comprendre la visibilité des variables189
Les limites du retour de résultat190
7 Les classes et les objets
191
La classe String, une approche de la notion d'objet191
Manipuler des mots en programmation192
Les différentes méthodes de la classe String194
Appliquer une méthode à un objet203
Construire et utiliser ses propres classes
205
Définir une classe et un type205
Définir un objet209
Manipuler un objet211
Une application qui utilise des objets Cercle212
Résumé
216
Exercices
217
Utiliser les objets de la classe String217
Créer une classe d'objets218
Consulter les variables d'instance218
Analyser les résultats d'une application objet218
Le projet : Gestion d'un compte bancaire
221
Traiter les chaînes de caractères221
Définir le type Compte221
Construire l'application Projet222
Définir le type LigneComptable222
Modifier le type Compte222
Modifier l'application Projet223
8 Les principes du concept objet
225
La communication objet
226
Les données static226
Le passage de paramètres par référence229
Les objets contrôlent leur fonctionnement
234
La notion d'encapsulation235
La protection des données235
Les méthodes d'accès aux données237
Les constructeurs243
L'héritage
246
La relation « est un »246
Le constructeur d'une classe héritée248
La protection des données héritées250
Le polymorphisme250
L'expression Switch252
Les Interfaces
253
Qu'est-ce qu'une interface ?253
Calculs géométriques256
Résumé
259
Exercices
260
La protection des données260
L'héritage261
Les interfaces265
Le projet : Gestion d'un compte bancaire
266
Encapsuler les données d'un compte bancaire266
Comprendre l'héritage268
Partie III
Outils et techniques orientés objet
9 Collectionner un nombre fixe d'objets
Les tableaux à une dimension
274
Déclarer un tableau274
Manipuler un tableau276
Quelques techniques utiles
280
La ligne de commande280
Trier un ensemble de données285
Les tableaux à deux dimensions
293
Déclaration d'un tableau à deux dimensions293
Accéder aux éléments d'un tableau294
Résumé
301
Exercices
302
Les tableaux à une dimension302
Les tableaux d'objets303
Les tableaux à deux dimensions303
Pour mieux comprendre le mécanisme des boucles imbriquées for-for304
Le projet : Gestion d'un compte bancaire
305
Traiter dix lignes comptables305
10 Collectionner un nombre indéterminé d'objets
307
La programmation dynamique
307
Les listes308
Les dictionnaires313
Les streams et les expressions lambda324
L'archivage de données
326
La notion de flux326
Les fichiers textes327
Les fichiers d'objets331
Gérer les exceptions336
Résumé
339
Exercices
341
Comprendre les listes341
Comprendre les dictionnaires343
Créer des fichiers textes344
Créer des fichiers d'objets346
Gérer les erreurs346
Le projet : Gestion d'un compte bancaire
347
Les comptes sous forme de dictionnaire347
La sauvegarde des comptes bancaires348
La mise en place des dates dans les lignes comptables348
11 Dessiner des objets
351
La bibliothèque AWT
351
Les fenêtres352
Le dessin354
Les éléments de communication graphique360
Les événements
364
Les types d'événements364
Exemple : associer un bouton à une action365
Exemple : fermer une fenêtre369
Quelques principes370
De l'AWT à Swing
370
Un sapin en Swing371
Modifier le modèle de présentation de l'interface374
Résumé
381
Exercices
382
Comprendre les techniques d'affichage graphique382
Apprendre à gérer les événements383
Le projet : Gestion d'un compte bancaire
387
Calcul de statistiques387
L'interface graphique388
12 Créer une interface graphique
391
Un outil d'aide à la création d'interfaces graphiques
391
Qu'est qu'un EDI ?392
Une première application avec NetBeans402
Gestion de bulletins de notes
413
Cahier des charges413
Mise en place des éléments graphiques415
Définir le comportement des objets graphiques422
Un éditeur pour dessiner
435
Cahier des charges436
Créer une feuille de dessins437
Créer une boîte à outils447
Créer un menu453
Résumé
457
Exercices
457
S'initier à NetBeans457
Le gestionnaire d'étudiants version 2459
L'éditeur graphique version 2463
Le projet : Gestion de comptes bancaires
465
Cahier des charges465
Structure de l'application467
Mise en place des éléments graphiques469
Définition des comportements472
13 Développer une application Android
477
Comment développer une application mobile ?
477
Bonjour le monde : votre première application mobile478
L'application Liste de courses490
Publier une application Android
508
Tester votre application sur un mobile Android509
Déposer une application Android sur un serveur dédié512
Résumé
522
Exercices
523
Comprendre la structure d'un projet Android523
La liste des courses - Version 2525
Annexe - Guide d'installations
529
Extension web
529
Le fichier corriges.pdf529
L'archive Sources.zip533
Le lien Java533
Le lien NetBeans533
Le lien Android Studio533
Installation d'un environnement de développement
534
Installation de Java SE Development Kit 17 sous Windows534
Installation de Java SE Development Kit 17 sous Mac542
Installation de Java SE Development Kit 17 sous Linux546
Installation de NetBeans sous Windows547
Installation de NetBeans sous Mac549
Installation de NetBeans sous Linux553
Utilisation des outils de développement
555
Installer la documentation en ligne555
Développer en mode commande555
Développer avec NetBeans560
Développer des applications Android avec Android Studio568
Index
577