TABLE DES MATI `
ERES 5
4 Les concepts d’H´eritage et de Polymorphisme 69
4.1 Pr´esentation et d´efinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.2 Construction et initialisation des objets d´eriv´es . . . . . . . . . . . . . . . . . . . . 72
4.3 Red´efinition, surd´efinition et h´eritage . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.3.1 Red´efinition.................................... 74
4.3.2 Lasurchage.................................... 75
4.3.3 Enr´esum´e..................................... 75
4.4 Lepolymorphisme .................................... 75
4.4.1 Tableaux h´et´erog`enes d’objets . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.4.2 R`egles du polymorphisme en Java . . . . . . . . . . . . . . . . . . . . . . . 78
4.5 La super-classe Object .................................. 78
4.6 Acc`es par membres prot´eg´es : protected ....................... 80
4.7 M´ethodes et classes finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.8 Lesclassesabstraites................................... 80
4.9 Lesinterfaces ....................................... 82
4.9.1 D´efinition et mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.9.2 Int´erˆet des interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.10 Connaˆıtre la classe et les types d’un objet . . . . . . . . . . . . . . . . . . . . . . . 83
4.10.1 L’op´erateur instanceof ............................. 83
4.10.2 La class Class .................................. 84
4.11ExercicesdeCours .................................... 85
4.11.1 Classes abstraites - classes concr`etes . . . . . . . . . . . . . . . . . . . . . . 85
4.11.2 Compilateur ................................... 86
4.11.3 Quisuis-je?.................................... 88
4.11.4 VraiouFaux? .................................. 88
5 La gestion d’exceptions 89
5.1 Pr´esentation........................................ 89
5.2 Gestion de plusieurs exceptions et transmission d’informations . . . . . . . . . . . 90
5.3 D´erivation et red´eclenchement d’exceptions . . . . . . . . . . . . . . . . . . . . . . 93
5.4 Le bloc finally ..................................... 95
5.5 Lesexceptionsstandard ................................. 96
5.6 ExercicesdeCours.................................... 97
5.6.1 VraiouFaux? .................................. 97
5.6.2 Motscrois´es.................................... 98
6 Les chaˆınes de caract`eres en Java 99
6.1 LetypeString ...................................... 99
6.1.1 Les chaˆınes de caract`eres sont des objets . . . . . . . . . . . . . . . . . . . . 99
6.1.2 Affichage d’une chaˆıne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.1.3 Longueur d’une chaˆıne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.1.4 acc`es aux caract`eres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.1.5 Concat´enation : l’op´erateur + . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.1.6 Recherche dans une chaˆıne : la m´ethode indexOf ............... 100
6.1.7 La comparaison de chaˆınes . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Tester l’´egalit´e de deux chaˆınes . . . . . . . . . . . . . . . . . . . . . . . . . 100
Comparerdeuxchaˆınes ............................. 101
6.1.8 Modification d’un caract`ere . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.1.9 Extraction de sous-chaˆınes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.1.10 Passage en majuscules/minuscules . . . . . . . . . . . . . . . . . . . . . . . 101
6.1.11 Conversion d’une chaˆıne vers un type primitif . . . . . . . . . . . . . . . . . 101
6.1.12 Conversion d’un type primitif vers une chaˆıne . . . . . . . . . . . . . . . . . 101
6.1.13 Chaˆınes et tableaux de caract`eres . . . . . . . . . . . . . . . . . . . . . . . . 102
6.1.14 Tableaudechaˆınes................................ 102