Heritage

Pages: 8 (1842 mots) Publié le: 30 mai 2012
L’h´ritage e
P.O.O. Ann´e 2008-09 e
Plan du cours

Table des mati`res e
1 L’h´ritage : un tour d’horizon e 2 Accessibilit´ des membres e 3 La red´finition de m´thodes e e 4 Les constructeurs 5 Graphe de la relation de typage 1 3 4 6 7

1

L’h´ritage : un tour d’horizon e

Les concepts de la programmation objet – l’encapsulation : int´gration des donn´es et des traitements dans une mˆmee e e entit´ ; protection du code ; e – la r´utilisation : accent mis sur la g´n´ricit´ du code, sur sa r´utilisabilit´ e e e e e e dans des applications diverses ; – l’h´ritage : d´finition d’une classe comme une prolongation d’une autre e e – le polymorphisme : ce sont les objets destinataires des messages qui d´terminent e le traitement effectu´. e L’h´ritage par l’exemple e public classPersonne{ private String nom; private String prenom; public Personne(String nom, String prenom){ this.nom = nom; this.prenom = prenom; }

1

public String getNom(){return nom;} public String getPrenom(){return prenom;} public String toString(){return prenom+nom;} }//Personne Exemple Un ´tudiant, un travailleur (salari´ ou ind´pendant), un retrait´ sont tous e e e e trois des personnes, avec un nom etun pr´nom. Mais ils ont chacun des partie cularit´s. e Un ´tudiant : e – le nom de sa formation – le nom de son universit´ e – le montant de la bourse qu’il re¸oit c Exemple 1 Un travailleur : – son m´tier e – le nom de son entreprise Un ind´pendant : e – le nombre de personnes qu’il embauche ; – son chiffre d’affaires

Un retrait´ : e – le montant de sa retraite

Un salari´ : e – son salaireExemple 1 public class Etudiant extends Personne{ private String universite; private String formation; // + toutes les methodes specifiques } public class Retraite extends Personne{ private float montantRetraite; // + toutes les methodes specifiques } public class Travailleur extends Personne{ private String metier; private String entreprise; // + toutes les methodes specifiques } 2

Exemple1 public class Salarie extends Travailleur{ private float salaire; // + toutes les methodes specifiques } public class Independant extends Travailleur{ private float chiffreAffaires; private int nbreSalaries; // + toutes les methodes specifiques } H´ritage e H´riter, c’est ´tendre une classe e e – ajouter des informations sp´cifiques e – sp´cialiser une classe ` partir d’une autre e a L’arbre de larelation d’h´ritage e – La relation d’h´ritage forme un arbre sur les classes. e – Toute classe qui n’h´rite pas explicitement d’une autre classe (la classe e Personne. . .) h´rite de la classe Object. e – La classe Object est la racine de cet arbre. L’arbre d’h´ritage e Soit une classe B qui h´rite d’une classe A. e On dira que A est la classe m`re, ou super-classe, et B la classe fille, ou esous-classe. – Toute instance de B est une instance de A. – Toute instance de B poss`de tous les membres de A plus les membres e d´finis dans B. e – Au niveau de la classe, tous les membres statiques de A sont des membres statiques de B (et B poss`de en plus les membres statiques d´finis dans e e B). – On peut red´finir dans B les m´thodes de A. e e

2

Accessibilit´ des membres e

L’acc`s auxmembres d’une classe e – Toute instance d’Etudiant est une instance de Personne. – Donc toute instance d’Etudiant a un nom et un prenom. – Pourtant, une instance d’Etudiant ne peut pas acc´der directement ` son e a nom et son prenom. 3

L’acc`s aux membres d’une classe e public class Etudiant extends Personne { public changeTonNom(String surnom){ this.nom = surnom; } } Erreur a la compilation ! !` L’acc`s aux membres d’une classe e Rappel : On ne peut acc´der ` un attribut private que depuis l’int´rieur e a e de la classe o` il est d´fini. u e Par contre public class Etudiant extends Personne { public String cEstQuoiTonNom(){ return this.getNom(); } } L’acc`s aux membres d’une classe e Conclusion : Une instance d’une sous-classe ne peut pas acc´der directement aux membres e priv´s de ses...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Heritage
  • Heritage
  • héritages
  • Heritage
  • Héritage africain
  • Héritage hippie
  • Héritage romain
  • Héritage révolutionnaire

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !