Sommaire: Cours programmation orientée objet en Java
Introduction
programmation objet pourquoi? Comment? Un exemple en Java
Classes et objets
Méthode et variables, constructeurs, contrôle d’accès
Héritage
Extension de classe, méthode et héritage, variables et héritage, constructeurs et héritage
Héritage: compléments
Classe Object, clonage, classes abstraites et interface, Classes internes et emboîtées
Object, Interfaces, classes imbriquées
Classe Object, clonage, classes abstraites et interface, classes internes et emboîtées
Exceptions
Exceptions, assertions
Divers
Enumeration, tableaux, conversions, noms
Généricité
Généralités, types génériques imbriqués, types paramètres bornés, méthodes génériques
Types de données
String et expressions régulières, Collections, Conteneurs, itérations
Entrée-sortie
Introduction à Swing
Threads
Compléments
Reflections, annotations, documentation…
Extrait du cours programmation orientée objet en Java
Chapitre I Introduction
A) Généralités
Problème du logiciel:
Taille
Coût : développement et maintenance
Fiabilité
Solutions :
Modularité
Réutiliser le logiciel
Certification
Typage…
Histoire:
Fonctions et procédures (60 Fortran)
Typage des données (70) Pascal Algol
Modules: données + fonctions regroupées (80) ada
Programmation objet: classes, objets et héritage
B) Principes de base de la POO
Objet et classe:
Classe = définitions pour des données
(variables) + fonctions (méthodes) agissant
sur ces données
Objet = élément d’une classe (instance)
avec un état
(une méthode ou une variable peut être
de classe = commune à la classe ou
d’instance = dépendant de l’instance
)
Principes de bases (suite)
Encapsulation et séparation de la spécification et de l’implémentation
Séparer l’implémentation de la spécification.
Ne doit être visible de l’extérieur que ce qui est nécessaire, les détails d’implémentation sont «cachés»
Héritage:
Une classe peut hériter des propriétés d’une autre classe: un classe peut être une extension d’une autre classe.
Principes de bases de la POO
Mais surtout notion de polymorphisme:
Si une classe A est une extension d’une classe B:
A doit pouvoir redéfinircertaines méthodes (disons f())
Un objet a de classe A doit pouvoir être considéré comme un objet de classe B
On doit donc accepter :
B b;
b=a; (a a toutes les propriétés d’un B)
b.f()
Doit appeler la méthode redéfinie dans A!
C’est le transtypage (exemple: méthode paint des interfaces graphiques)
…….
Cours complet sur la programmation-orientée objet en Java (1705 KO) (Cours PDF)