iv TABLE DES MATIÈRES
3.3.2 Création d’un tableau ........................... 18
3.3.2.1 Tableau à une dimension .................... 18
3.3.2.2 Tableau à plusieurs dimensions ................ 19
3.3.3 Manipulation d’un tableau ......................... 19
3.4 Type référence de classe ou d’interface ..................... 20
3.5 Résumé de ce que nous avons vu ........................ 21
4 Définition des classes 23
4.1 La classe ...................................... 23
4.1.1 Les différentes formes de déclaration d’une classe ........... 23
4.1.2 Variantes .................................. 25
4.2 Les champs d’une classe ............................. 26
4.2.1 Forme générale d’une déclaration .................... 26
4.2.2 Variantes .................................. 26
4.2.3 Initialisation des champs ......................... 27
4.2.3.1 Bloc d’initialisation statique ................... 27
4.2.3.2 Bloc d’initialisation d’instance .................. 28
4.3 Déclaration des méthodes ............................. 28
4.3.1 Forme générale d’une déclaration .................... 28
4.3.2 Variantes .................................. 29
4.3.3 Passage des arguments .......................... 29
4.3.4 Tableau de références ........................... 30
4.3.5 Surcharge des méthodes ......................... 30
4.4 Un exemple : animation d’un modèle de lampe ................. 31
4.4.1 Le modèle ................................. 31
4.4.1.1 La classe Lampe ......................... 32
4.4.1.2 La classe Interrupteur ...................... 32
4.4.2 Animation de notre modèle ........................ 34
4.4.2.1 La programmation de la vue .................. 34
4.4.2.2 La programmation du contrôle ................. 38
4.5 Résumé de ce que nous avons vu ........................ 39
5 Plus loin avec les classes 41
5.1 Notion de constructeur ............................... 41
5.1.1 Déclaration d’un constructeur ....................... 42
5.1.2 A propos des arguments ......................... 44
5.1.2.1 Nom des arguments ....................... 44
5.1.2.2 Nature des arguments ...................... 45
5.1.3 Utilisation des mots clé this et super pour exécuter un constructeur . 46
5.2 Compatibilité de types ............................... 48
5.2.1 Compatibilité des types primitifs ..................... 48
5.2.2 Compatibilité des types référence .................... 49
5.2.2.1 Erreurs détectées à la compilation ............... 50
5.2.2.2 Erreurs détectées à l’exécution ................. 50
5.3 Redéfinition d’une méthode ............................ 51
5.4 Lien dynamique ................................... 52
5.5 Méthode et classe abstraite ............................ 53
5.5.1 Méthode abstraite ............................. 53