Polymorphisme : règles

Slides:



Advertisements
Présentations similaires
Présentation python : Épisode 4 ● Les objets : héritage ● Introduction à l'héritage ● Un exemple illustrant l'héritage ● Détails sur l'appel de méthode.
Advertisements

Géométrie Différentielle – Cubiques d'Hermite Introduction aux courbes paramétriques et à la géométrie différentielle.

1 Programmation Orientée Objet ● Qu'est-ce qu'un objet ● Collaboration des objets ● Les classes ● Relations entre les classes – “Utilise”, “Contient”,
Les objectifs de connaissance : Les objectifs de savoir-faire : - Connaître les règles de nomenclature des composés organiques (alcanes, alcools, aldéhydes,
Présentation python : Épisode 4 ● Les objets : héritage ● Introduction à l'héritage ● Un exemple illustrant l'héritage ● Détails sur l'appel de méthode.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Calcul de probabilités
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Parent, administrateur et gestionnaire de Crèche
I- ANALYSE DU BESOIN / Plan
Détection des erreurs.
Algorithmique demander jeu du pendu.
Cycle élémentaire Année scolaire
Recherches mathématiques
Les Tableaux en JAVA.
JAVA et POO : Notion d'héritage
QUI EST-CE?.
Programmation de numération – CE1 / CE2 – Année
Réussir l'épreuve composée
Javadoc et débogueur Semaine 03 Version A16.
Les Instructions – Organigramme
Fonctions.
Principes de programmation (suite)
2°9 lycée Beauregard à Montbrison
dans le triangle rectangle
Algorithmique & Langage C
Citoyen, Citoyenneté c'est quoi ?
Techniques du Data Mining
Programmation en C++ Classes
Connaître les triangles
LE NUMÉRO ATOMIQUE (ste)
Création Et Modification De La Structure De La Base De Données
1.2 dénombrement cours 2.
Cours N°10: Algorithmiques Tableaux - Matrices
Gestion des fichiers Niv2
9 Méthodes multidimentionnelles et représentation d'associations
ÉNERGIE.
Deuxième partie LE DOSSIER TECHNIQUE DU MARINGOUIN.
Développement d’applications interactives
Diagrammes UML 420-KE2-LG.
Connaître les déterminants
Trigonométrie.
4 Méthodes multidimentionnelles et représentation d'associations
HÉRITAGE IFT A03.
Lois de Probabilité Discrètes
Lois de Probabilité Discrètes
Langages de programmation TP11
03- Evaluation Access 2003 Cette évaluation comporte des QCM (1 seule réponse) et des Zones à déterminer dans des copies d’écran.
Les nombres complexes Saison 1 - Épisode 2. Les nombres complexes Saison 1 - Épisode 2.
Classe de 3ème – Collège Charles-Péguy Bobigny
JDepend - Analyse de la qualité du code Java -
Bienvenue ! Année scolaire [Insérez l'année] Nom de l'école
Trigonométrie.
Bienvenue ! Année scolaire [Insérez l'année] Nom de l'école
Logiciel de présentation
Active Directory Services
Elles contiennent des informations autre que géométriques
9 Méthodes multidimentionnelles et représentation d'associations
9 Méthodes multidimentionnelles et représentation d'associations
2. Organisation comptable 2.1 Les comptes
INTERFACE ET POLYMORPHISME
chapitre 10 : La Géométrie dans l’Espace.
Arbre binaire.
Retour sur les interfaces
Itinéraires : Utilisez ces diapositives et notes pour créer votre projet. Une capsule temporelle contient des objets ou des souvenirs d'une année donnée.
DICTIONNAIRES (MAPS).
Problèmes multiplicatifs
Dérivation – Fonctions cosinus et sinus
Transcription de la présentation:

Polymorphisme : règles On déclare un objet de type parent On le définit parmi un de ses types dérivés Une méthode polymorphe doit Être déclarée dans la classe parent Redéfinit dans les classes enfants

Méthode abstraite Une méthode abstraite n'a pas de définition : Elle est déclarée dans une classe parent Elle n'a pas de corps, se déclare comme en c Une classe possédant une ou plusieurs méthodes abstraites devient obligatoirement une classe abstraite Une méthode abstraite est obligatoirement définie dans les classes enfants public abstract double calculerAire();

Classe abstraite Une classe abstraite est précédée du mot clé abstract Ne peut pas être instanciée Doit obligatoirement être dérivée (avoir au moins une classe enfant) public abstract class Forme{...}

Classes et méthodes abstraites Exemple : on souhaite créer une hiérarchie de classes qui décrive des formes géométriques à deux dimensions Ainsi la classe "mère" serait la classe Forme Elle pourrait avoir des classes filles telles que Cercle, Rectangle, etc.

Classes et méthodes abstraites Sachant que toutes les formes possèdent les propriétés périmètre et surface, il est judicieux de placer les méthodes définissant ces propriétés (perimetre() et surface() ) dans la classe qui est à la racine de l'arborescence ( Forme)

Classes et méthodes abstraites

Classes et méthodes abstraites La classe Forme ne peut pas implémenter ces deux méthodes, car on ne peut pas calculer le périmètre et la surface sans connaître le détail de la forme

Classes et méthodes abstraites Afin d'être certain que les méthodes surface() et perimetre() seront implémentées dans les classes fille de la classe Forme, on déclare ses deux classes comme étant abstraites.

Classes et méthodes abstraites Codez les classes Forme, Rectangle et Cercle. Peut-on déclarer des objets de type Forme ? Peut-on instancier des Forme ?