i
Chapitre 1
Les bases du langage Java 1-1
Syntaxe Java . . . . . . . . . . . . . . . . . . . . 1-1
Identificateurs . . . . . . . . . . . . . . . . . 1-2
Littéraux. . . . . . . . . . . . . . . . . . . . . 1-3
Littéraux entiers. . . . . . . . . . . . . . . 1-3
Littéraux virgule flottante . . . . . . . . . 1-3
Littéraux booléens . . . . . . . . . . . . . 1-4
Littéraux caractère . . . . . . . . . . . . . 1-4
Littéraux chaîne . . . . . . . . . . . . . . . 1-5
Mots clés. . . . . . . . . . . . . . . . . . . . . 1-5
Instructions . . . . . . . . . . . . . . . . . . . 1-6
Blocs de code . . . . . . . . . . . . . . . . . . 1-6
Commentaires . . . . . . . . . . . . . . . . . 1-7
Expressions . . . . . . . . . . . . . . . . . . . 1-8
Opérateurs . . . . . . . . . . . . . . . . . . . 1-8
Opérateurs arithmétiques . . . . . . . . . 1-9
Opérateurs logiques . . . . . . . . . . . .1-10
Opérateurs de comparaison . . . . . . . .1-10
Opérateurs d’affectation . . . . . . . . . . 1-11
Opérateurs au niveau bits . . . . . . . . .1-12
Un opérateur spécial : l’opérateur ?: . . .1-13
Types de données Java . . . . . . . . . . . . . .1-13
Variables. . . . . . . . . . . . . . . . . . . . .1-13
Types de données intégrés. . . . . . . . . . .1-14
Types de données numériques . . . . . .1-14
Types de données booléens . . . . . . . .1-15
Types de données caractère . . . . . . . .1-15
Types de données composites. . . . . . . . .1-15
Tableaux . . . . . . . . . . . . . . . . . . .1-15
Chaînes. . . . . . . . . . . . . . . . . . . .1-17
Transtypage . . . . . . . . . . . . . . . . . . .1-18
Transtypage implicite . . . . . . . . . . .1-18
Règles de portée . . . . . . . . . . . . . . . .1-18
Structure de contrôle du déroulement. . . . . .1-19
Boucles. . . . . . . . . . . . . . . . . . . . . .1-19
La boucle while . . . . . . . . . . . . . . . 1-20
La boucle do. . . . . . . . . . . . . . . . .1-20
La boucle for. . . . . . . . . . . . . . . . .1-20
Instructions de contrôle des boucles . . . . .1-22
L’instruction break . . . . . . . . . . . . .1-22
L’instruction continue . . . . . . . . . . .1-22
Instructions conditionnelles. . . . . . . . . .1-22
L’instruction if-else . . . . . . . . . . . . .1-22
L’instruction switch. . . . . . . . . . . . .1-23
Récapitulatif . . . . . . . . . . . . . . . . . . . .1-24
Chapitre 2
Programmation orientée objet
dans Java 2-1
Présentation de la programmation orientée
objet. . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Classes . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Déclaration et instanciation des classes . . . . 2-2
Données membre . . . . . . . . . . . . . . . . 2-3
Méthodes de classe . . . . . . . . . . . . . . . 2-3
Constructeurs et finaliseurs . . . . . . . . . . 2-4
Etude de cas : Exemple simple d’OOP . . . . 2-4
Héritage de classe . . . . . . . . . . . . . . . . 2-6
Utilisation de this et de super . . . . . . . 2-8
Modificateurs d’accès . . . . . . . . . . . . . . 2-9
Accès depuis l’intérieur du paquet
d’une classe . . . . . . . . . . . . . . . . . 2-9
Accès depuis l’extérieur du paquet
d’une classe . . . . . . . . . . . . . . . . . 2-9
Méthodes d’accès . . . . . . . . . . . . . . . 2-10
Classes abstraites . . . . . . . . . . . . . . . 2-11
Polymorphisme . . . . . . . . . . . . . . . . . . 2-13
Surcharge des méthodes . . . . . . . . . . . 2-13
Utilisation des interfaces . . . . . . . . . . . 2-13
Paquets Java . . . . . . . . . . . . . . . . . . . . 2-17
L’instruction import. . . . . . . . . . . . . . 2-17
Déclaration des paquets . . . . . . . . . . . 2-18
Options de projet relatives aux paquets . . 2-18
Récapitulatif . . . . . . . . . . . . . . . . . . . . 2-19
Chapitre 3
Les bibliothèques des classes Java 3-1
Introduction . . . . . . . . . . . . . . . . . . . . . 3-1
Le paquet du langage (lang) . . . . . . . . . . . . 3-2
La classe Object . . . . . . . . . . . . . . . . . 3-2
Classes d’enveloppe de type . . . . . . . . . . 3-2
La classe Math . . . . . . . . . . . . . . . . . . 3-3
La classe String . . . . . . . . . . . . . . . . . 3-4
La classe StringBuffer . . . . . . . . . . . . . . 3-5
La classe System . . . . . . . . . . . . . . . . . 3-6
Le paquet des utilitaires (util) . . . . . . . . . . . 3-6
L’interface Enumeration . . . . . . . . . . . . 3-7
La classe Vector . . . . . . . . . . . . . . . . . 3-7
Le paquet des E/S (io) . . . . . . . . . . . . . . . 3-9
Classes de flux d’entrée. . . . . . . . . . . . . 3-9
Classes de flux de sortie . . . . . . . . . . . 3-11
Classes de fichiers . . . . . . . . . . . . . . . 3-12
La classe StreamTokenizer . . . . . . . . . . 3-13
Table des matières