0
Programmation OrientéeObjet et JavaAxel KAMALAK               www.axelkamalak.eu
La programmation orientée objet? C’est la représentation du monde réel
La programmation orientée objet? C’est la représentation du monde réel  C’est la capacité de regrouper des     paramètres ...
La programmation orientée objet? C’est la représentation du monde réel  C’est la capacité de regrouper des     paramètres ...
Qu’est qu’une classe ?  C’est un modèle de quelque chose              d’abstrait.
Qu’est qu’une classe ?  C’est un modèle de quelque chose                  d’abstrait. C’est la définition qui permet de cr...
Qu’est qu’une classe ?
Qu’est qu’une classe ?Actrice Elle a des attributs
Qu’est qu’une classe ?ActriceUn prénomUn nomUne date de naissanceUne adresseUn lieu de naissanceElle a des attributs
Qu’est qu’une classe ?Un prénomUn nomUne date de naissanceUne adresseUn lieu de naissanceElle a des attributs et des métho...
Qu’est qu’une classe ?Un prénom                  MangerUn nom                     BoireUne date de naissance      ParlerUn...
Qu’est qu’une classe ?Un prénom                  MangerUn nom                     BoireUne date de naissance      ParlerUn...
Qu’est qu’une classe ?Un prénom                  MangerUn nom                     BoireUne date de naissance      ParlerUn...
Qu’est qu’une classe ?Un prénom                  MangerUn nom                     BoireUne date de naissance      ParlerUn...
Qu’est qu’une classe ? Un prénom                  Manger Un nom                     Boire Une date de naissance      Parle...
Qu’est qu’une classe ?public class Fille {private int id ;private String nom;private String prenom;private String dateNais...
Qu’est qu’une classe ?public class Fille {private int id ;private String nom;private String prenom;private String dateNais...
Qu’est qu’une classe ?public class Fille{private int id ;private String nom;private String prenom;private String dateNaiss...
Qu’est qu’une classe ?public class Fille {private int id ;                           On les appelles variablesprivate Stri...
Qu’est qu’une classe ?public class Fille {private int id ;                           On les appelles variablesprivate Stri...
Qu’est qu’une classe ?public class Fille{private int id ;                                 Les variables de classeprivate S...
Qu’est qu’une classe ?public class Fille {private int id ;                                 Les variables de classeprivate ...
Qu’est qu’un objet?Un objet est l’instanciation d’une classe.
Qu’est qu’une classe ?public class Actrice{private int id ;                                 Les variables de classeprivate...
Qu’est qu’une classe ?public class Actrice {private int id ;                                 Les variables de classeprivat...
Qu’est qu’un objet?Un objet est l’instanciation d’une classe.
Qu’est qu’un objet?
Qu’est qu’un objet?Voici un objet
Qu’est qu’un objet?Voici un objet instanciéà partir de la classeActrice.
Qu’est qu’un objet?Voici un objet instanciéà partir de la classeActrice.   Il dispose de toutes   les propriétés et méthod...
Qu’est qu’un objet?Voici un objet instanciéà partir de la classeActrice.   Il dispose de toutes   les propriétés et méthod...
Qu’est qu’un objet?     prénom : Cérise
Qu’est qu’un objet?Voici un autre   objet
Qu’est qu’un objet?Voici un autre   objet  Elle a un prénom : Audrey
Qu’est qu’un objet? Voici un autre    objetIl a un prénom : Jeanne
Qu’est qu’un objet?Ce sont tousdes objets obtenu à partir  d’un modèle
Qu’est qu’un objet ?Actrice est un modèle (classe) ;
Qu’est qu’un objet ?Actrice est un modèle (classe) ;Tandis que Cérise et Audrey sontdes instances (objet).
Qu’est qu’un objet ?Actrice est un modèle (classe) ;Tandis que Cérise et Audrey sontdes instances (objet).Ils ont été inst...
Création d’un objet    Nom de la classe nomObjet ;         Actrice Audrey ;
Création d’un objet    Nom de la classe nomObjet ;           Actrice Audrey ; On vient de déclarer un objet de type       ...
Création d’un objet    Nom de la classe nomObjet ;           Actrice Audrey ;    Il va falloir construire l’objet.
Création d’un objet    Nom de la classe nomObjet ;           Actrice Audrey ;    Il va falloir construire l’objet.       A...
Création d’un objet    Nom de la classe nomObjet ;            Actrice Audrey ;     Il va falloir construire l’objet.      ...
Création d’un objet   Actrice Audrey = new Actrice();  On peut aussi créer un objet en 1                étape.
Création d’un objet     La notion de constructeurUn constructeur a pour objectif d’initialiser les  attributs de laclasse....
Création d’un objet     La notion de constructeurUn constructeur a pour objectif d’initialiser les  attributs de laclasse....
Création d’un objet     La notion de constructeurUn constructeur a pour objectif d’initialiser les  attributs de laclasse....
Création d’un objet     La notion de constructeurUn constructeur a pour objectif d’initialiser les  attributs de laclasse....
La notion de constructeurpublic class Actrice {private int id ;private String nom;private String prenom;private String dat...
La notion de constructeurpublic class Actrice {private int id ;private String nom;private String prenom;private String dat...
La notion de constructeur                  On dit que le premier argument reçupublic class Actrice {private int id ;privat...
La notion de constructeurpublic class Actrice {      Ainsi de suite, pour chaque attribut.private int id ;private String n...
La notion de constructeurpublic class Actrice {private int id ;     this donne le nom de la classeprivate String nom;priva...
La notion de constructeur Il est possible de mettre     en place plusieurs       constructeurs.
La notion de constructeur     Il est possible de mettre         en place plusieurs           constructeurs.    Si un const...
La notion de constructeur     Il est possible de mettre         en place plusieurs           constructeurs.    Si un const...
La notion de constructeur     Il est possible de mettre         en place plusieurs           constructeurs.    Si un const...
La notion de constructeur      Il est possible de mettre          en place plusieurs            constructeurs.    Si un co...
La notion de constructeur Actrice Jeanne = new Actrice () ;LE COMPILATEUR VA REFUSER DE CREER UN OBJET                 TYP...
L’objet   Un objet a trois caractéristiques.
L’objet   Un objet a trois caractéristiques.
L’objet   Un objet a trois caractéristiques.            Le comportement de l’objet
L’objet   Un objet a trois caractéristiques.            Le comportement de l’objet              Quelles sont les méthodes ...
L’objet   Un objet a trois caractéristiques.              Le comportement de l’objet                 Quelles sont les méth...
L’objet   Un objet a trois caractéristiques.            L’état d’un objet          Quel est la réaction de l’objet lorsqu’...
L’objet   Un objet a trois caractéristiques.            L’état d’un objet          Dans un Système d’information, chaque c...
L’objet   Un objet a trois caractéristiques.               L’état d’un objet          Dans un Système d’information, chaqu...
L’objet   Un objet a trois caractéristiques.            L’état d’un objet          Si une commande est expédié, peut-on le...
L’objet      Chaque objet est unique.     Chaque objet a une identité.
L’objet      Chaque objet est unique.
L’objet      Chaque objet est unique.Même dans le cas de 2 jumeaux
L’objet      Chaque objet est unique.Même dans le cas de 2 jumeaux
L’objet      Chaque objet est unique.Même dans le cas de 2 jumeauxIls peuvent avoir le même prénom,
L’objet      Chaque objet est unique.Même dans le cas de 2 jumeauxIls peuvent avoir le même prénom,Le même nom, la même ad...
L’objet      Chaque objet est unique.Même dans le cas de 2 jumeauxIls peuvent avoir le même prénom,Le même nom, la même ad...
L’objet        Chaque objet est unique. Même dans le cas de 2 jumeauxChacun aura une empreinte digitaleDifférente.
L’objet        Chaque objet est unique. Même dans le cas de 2 jumeauxChacun aura une empreinte digitaleDifférente.
L’objet     Chaque objet est unique.
Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels :   Type de Retour NomMethode(type1 argumen...
Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels :   Type de Retour NomMethode(type1 argumen...
Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels :   Type de Retour NomMethode(type1 argumen...
Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels :   Type de Retour NomMethode(type1 argumen...
Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels :   Type de Retour NomMethode(type1 argumen...
Les méthodesLes arguments : ce sont les arguments que l’on souhaite   passer à la méthode. Elles sont obligatoirement sépa...
Les méthodesLes arguments : ce sont les arguments que l’on souhaite passer   à la méthode. Elles sont obligatoirement sépa...
Les méthodesLes arguments : ce sont les arguments que l’on souhaite passer  à la méthode. Elles sont obligatoirement sépar...
Les méthodes          Getter et Setter  Les accesseurs permettent de modifier ou récupérer les attributs  de la classe. Po...
Les méthodes            Getter et SetterLes accesseurs permettent de modifier ou récupérer les attributs de la classe.  Po...
Les méthodespublic class Actrice {private String nom;public void Setnom(String nom){  this.nom=nom;}public String Getnom()...
Les méthodespublic class Actrice {private String nom;          Voilà une variable d’instance.public void Setnom(String nom...
Les méthodespublic class Fille{                             Voilà le setteur.private String nom;                          ...
Les méthodespublic class Fille {                                 Voilà le getteurprivate String nom;              Cette mé...
L’encapsulation    C’est un mécanisme     fondamental de la  Programmation Orientée            objet.
L’encapsulation    C’est un mécanisme     fondamental de la  Programmation Orientée            objet.
L’encapsulation L’encapsulation consiste à  protéger les informations  contenues dans un objet.
L’encapsulation L’encapsulation consiste à  protéger les informations  contenues dans un objet.
L’encapsulation L’encapsulation consiste à  protéger les informations  contenues dans un objet.
L’encapsulation L’encapsulation consiste à  protéger les informations  contenues dans un objet.
L’encapsulationUn utilisateur peut manipuler  les données à l’aide des           méthodes.
L’encapsulationUn utilisateur peut manipuler  les données à l’aide des           méthodes.
L’encapsulationUn utilisateur peut manipuler  les données à l’aide des           méthodes.
L’encapsulation Il existe 3 niveaux d’accès.
L’encapsulation Il existe 3 niveaux d’accès.             Public
L’encapsulation Il existe 3 niveaux d’accès.             Public,             Privé,
L’encapsulation Il existe 3 niveaux d’accès.             Public,             Privé,            Protégé
L’encapsulation           Public
L’encapsulation           Publicaccessible par tout le monde
L’encapsulation           Private
L’encapsulation           PrivateUniquement manipulable par     l’objet elle-même.
L’encapsulation           PrivateUniquement manipulable par     l’objet elle-même.
L’encapsulation         Protégé manipulable par l’objet elle-           même
L’encapsulation         Protégé manipulable par l’objet elle-           même             Et       Les enfants.
L’encapsulation         Protégé manipulable par l’objet elle-           même             Et       Les enfants.
L’encapsulation
L’encapsulationUne Actrice : Elle s’appelle Laura
L’encapsulation    Une fille : Elle s’appelle LauraDemanderson nomest publique
L’encapsulation    Une fille : Elle s’appelle LauraDemander                  Accessible parson nom                   tout ...
L’encapsulation    Une fille : Elle s’appelle LauraDemander                   Accessible parson nom                    tou...
L’encapsulationLaura peut accepterde s’embrasserAvec un hommedont elle est séduite.
L’encapsulationLaura peut accepterde s’embrasserAvec un hommedont elle est séduite.
L’encapsulationLaura peut accepter de s’embrasserAvec un homme dontelle est séduite.   S’embrasser       Est      Privée
L’encapsulationLaura peut accepterde s’embrasserAvec un hommedont elle est séduite.    Si un garçon        souhaite  embra...
L’encapsulationLaura peut accepterde s’embrasser         Séduire est publique.Avec un hommedont elle est séduite. Si un ga...
L’encapsulation            Séduire est publique.            La méthode Séduire            va appeler la méthode           ...
L’encapsulation        Que se passe t-il si un           homme embrasse      Laura sans l’avoir séduite ?
L’encapsulationQue se passe t-il si un homme embrasse      Laura sans l’avoir séduite ?
L’encapsulation  Que se passe t-il si un    homme embrasseLaura sans l’avoir séduite ?Il va prendre une gifle
L’encapsulation      Que se passe t-il  si un homme embrasseLaura sans l’avoir séduite ? En effet, il y’a violation de  la...
L’encapsulation       Que se passe t-il si      un homme embrasse   Laura sans l’avoir séduite ? En effet, il y’a violatio...
L’encapsulationLaura a aussi des données         protégés.
L’encapsulation Laura a aussi des données          protégés.Son argent en banque
L’encapsulation                 Personne d’autre ne pourra                 toucher à cette argent.Il n’ y a que LauraEt se...
L’encapsulation  Personne d’autre ne pourra toucher à cette argen          Laura a aussi des donnéesIl n’ y a que Laura   ...
L’héritage C’est un concept fondamental  de la programmation orienté             objet.
L’héritage C’est un concept fondamental  de la programmation orienté             objet.
L’héritageIl offre la possibilité de réutiliser les    composants logiciels existants.
L’héritageIl offre la possibilité de réutiliser les    composants logiciels existants. Une classe dérivé(=enfant) pourra  ...
L’héritageIl offre la possibilité de réutiliser les    composants logiciels existants. Une classe dérivé(=enfant) pourra  ...
L’héritageIl offre la possibilité de réutiliser les    composants logiciels existants. Une classe dérivé(=enfant) pourra  ...
L’héritage   Une classe enfant peut    accéder uniquement   au donnée publique et          protégée.
L’héritage   Une classe enfant peut    accéder uniquement   au donnée publique et          protégée.
L’héritageCe qui offre la possibilité de ne pas        avoir à répartir de 0.
L’héritage
L’héritageIl n’y a pas d’héritage multiple             en Java
L’héritageUne personne a un nom, un prénom, un numéro de SécuritéSociale.Un étudiant a un nom, un prénom, un numéro de Séc...
L’héritageUne personne a un nom, un prénom, un numéro de SécuritéSociale.Un étudiant a un nom, un prénom, un numéro de Séc...
L’héritageUne personne a un nom, un prénom, un numéro deSécurité Sociale.Un étudiant a un nom, un prénom, un numéro de Séc...
L’héritageOn peut centraliser le nom, le prénom, le numéro de Sécurité Sociale au sein d’une classe Personne.         La c...
L’héritage   Un professeur est une personne.    Un étudiant est une personne.
L’héritage   Un professeur est une personne.    Un étudiant est une personne.   Il s’agit de la relation « est un »
L’héritage   Un professeur est une personne.    Un étudiant est une personne.   Il s’agit de la relation « est un »
L’héritage                               Sans héritage, on aurait     Personne                            Etudiant        ...
L’héritage                           Sans héritage, on aurait       Personne                        Etudiant              ...
L’héritage                               Sans héritage, on aurait     Personne                            Etudiant        ...
L’héritage     Avec héritage, on aurait
L’héritage                  Avec héritage, on auraitN’est-il pas plus simpleD’implémenter ce modèle?
L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}
L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}
L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}Le m...
L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}Le m...
Le polymorphisme  Le polymorphisme est un concept   fondamental de la programmation           orientée objet.
Le polymorphisme  Le polymorphisme est un concept   fondamental de la programmation             orientée objet. Dans la la...
Le polymorphisme  Le polymorphisme est un concept   fondamental de la programmation             orientée objet. Dans la la...
Le polymorphismeLe polymorphisme offre la possibilité de  définir plusieurs méthodes portant le même nom mais possédant di...
Le polymorphismeLe polymorphisme offre la possibilité de  définir plusieurs méthodes portant le même nom mais possédant di...
Le polymorphismeLe polymorphisme offre la possibilité de  définir plusieurs méthodes portant le même nom mais possédant di...
Le polymorphismeLe polymorphisme offre la possibilité de  définir plusieurs méthodes portant le même nom mais possédant di...
Le polymorphismeLe polymorphisme offre la possibilité de  définir plusieurs méthodes portant le même nom mais possédant di...
Le polymorphismeLe polymorphisme offre la possibilité de  définir plusieurs méthodes portant le même nom mais possédant di...
Le polymorphismePrenons l’exemple d’un chien qu’une personne essaye d’approcher.Chaque chien a une manière différente pour...
Le polymorphismeSi vous lui jetez une pierre.Sa méthode accueillir va recevoir en argument une pierre.Voilà comment il va ...
Le polymorphismeSi vous lui jetez une pierre.Sa méthode accueillir va recevoir en argument une pierre.Voilà comment il va ...
Le polymorphismeSi vous lui donner à manger.Sa méthode accueillir va recevoir en argument de la nourriture.Voilà comment i...
Le polymorphismeSi vous lui donner à manger.Sa méthode accueillir va recevoir en argument de la nourriture.Voilà comment i...
Le polymorphismeNous venons de voir que le même objet Chien pouvaitavoirdes comportements différents. La même méthodeaccue...
Le polymorphismeNous venons de voir que le même objet Chien pouvaitavoirdes comportements différents. La même méthodeaccue...
Classe Abstraite  Une classe abstraite est une classe                  dont l’implémentation n’est pas complète.
Classe Abstraite   Une classe abstraite est une classe                    dontl’implémentation n’est pas complète.    Elle...
Classe Abstraite  Une classe abstraite est une classe                    dont l’implémentation n’est pas complète.    Elle...
Classe Abstraite  Une classe abstraite est une classe                    dont l’implémentation n’est pas complète.    Elle...
Classe Abstraite  Une classe abstraite est une classe                    dont l’implémentation n’est pas complète.    Elle...
Classe AbstraiteLe type de retour
Classe AbstraiteLe type de retourLe nom
Classe AbstraiteLe type de retourLe nomLe type d’argument
Classe AbstraiteLe type de retourLe nomLe type d’argumentC’est une assurance pour la classe de baseles classes enfants res...
Classe AbstraiteLe type de retourLe nomLe type d’argumentC’est une assurance pour la classede base queles classes enfants ...
Classe abstraiteUne classe est dite abstraite si et seulement si elle détient une ouplusieurs méthodes abstraites.
Classe abstraite Il n’est pas possible d’instancier         une classe abstraite.
Classe abstraite Il n’est pas possible d’instancier         une classe abstraite.
Classe abstraite      Par exemple, un animal domestique.
Classe abstraite                Par exemple, un animal domestique.On sait qu’il aura obligatoirementUne méthode parler.Tou...
Classe abstraite              Par exemple, un animal domestique.Les oiseaux vont dire :     Cik Cik Cik
Classe abstraite              Par exemple, un animal domestique.Le chat va dire : Miaou Miaou
Classe abstraite              Par exemple, un animal domestique.Le chien va dire : Hav Hav Hav
Classe abstraiteSi l’on définie une classe abstraite Animal         Domestique, on va y placer      La méthode abstraite «...
Classe abstraite              Par exemple, un animal domestique.Ainsi, la classe Chien va dire :        Hav Hav Hav
Classe abstraite              Par exemple, un animal domestique.Ainsi, la classe Oiseau va dire :          Cik Cik Cik
Les classes Interfaces Nous avons vu auparavant que l’héritage multiple n’existe pas en                Java.  Nous avons v...
Les classes InterfacesNous avons vu auparavant quel’héritage multiple n’existe pas en               Java. Nous avons vu qu...
Les classes Interfaces Une classe interface va aussi définir    simplement les signatures des  méthodes pour les classes e...
Les classes Interfaces Une classe interface va aussi définir    simplement les signatures des  méthodes pour les classes e...
Les classes Interfaces Une classe interface va aussi définir    simplement les signatures des  méthodes pour les classes e...
Les classes Interfaces Une classe interface va aussi définir    simplement les signatures des  méthodes pour les classes e...
Les classes Interfaces Il est possible d’hériter d’une seule      classe car l’héritage multiple          n’existe pas en ...
Les classes Interfaces Il est possible d’hériter d’une seule      classe car l’héritage multiple          n’existe pas en ...
Les classes Interfaces Il est possible d’hériter d’une seule      classe car l’héritage multiple          n’existe pas en ...
Les classes Interfaces Il est possible d’hériter d’une seule      classe car l’héritage multiple          n’existe pas en ...
Les classes Interfaces Il est possible d’hériter d’une seule      classe car l’héritage multiple          n’existe pas en ...
Les classes Interfaces Il est possible d’hériter d’une seule      classe car l’héritage multiple          n’existe pas en ...
Les classes Interfaces                 Mickael JacksonEst un danseur                     Est un chanteur
Les classes Interfaces       Mickael Jackson                         Un chanteur n’est pas                         Un dans...
Les classes Interfaces       Mickael Jackson                         Un chanteur n’est pas                         Un dans...
Les classes Interfaces          Comment faire ?Une classe ne peut hériter d’une seule               classe.  Voilà, les cl...
Les classes Interfaces   On va faire appel à deux classes               interfaces.               Danseur                 ...
Les classes Interfaces   On va faire appel à deux classes               interfaces.               Danseur                 ...
Upcoming SlideShare
Loading in...5
×

Programmation orientée objet et java

1,646

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,646
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
144
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Programmation orientée objet et java"

  1. 1. Programmation OrientéeObjet et JavaAxel KAMALAK www.axelkamalak.eu
  2. 2. La programmation orientée objet? C’est la représentation du monde réel
  3. 3. La programmation orientée objet? C’est la représentation du monde réel C’est la capacité de regrouper des paramètres dans un ensemble.
  4. 4. La programmation orientée objet? C’est la représentation du monde réel C’est la capacité de regrouper des paramètres dans un ensemble. Un ensemble de principe clés qui permettent la mise en place d’un logiciel.
  5. 5. Qu’est qu’une classe ? C’est un modèle de quelque chose d’abstrait.
  6. 6. Qu’est qu’une classe ? C’est un modèle de quelque chose d’abstrait. C’est la définition qui permet de créer des objets.
  7. 7. Qu’est qu’une classe ?
  8. 8. Qu’est qu’une classe ?Actrice Elle a des attributs
  9. 9. Qu’est qu’une classe ?ActriceUn prénomUn nomUne date de naissanceUne adresseUn lieu de naissanceElle a des attributs
  10. 10. Qu’est qu’une classe ?Un prénomUn nomUne date de naissanceUne adresseUn lieu de naissanceElle a des attributs et des méthodes
  11. 11. Qu’est qu’une classe ?Un prénom MangerUn nom BoireUne date de naissance ParlerUne adresse DormirUn lieu de naissance RougirElle a des attributs et des méthodes
  12. 12. Qu’est qu’une classe ?Un prénom MangerUn nom BoireUne date de naissance ParlerUne adresse DormirUn lieu de naissance RougirElle a des attributs et des méthodes
  13. 13. Qu’est qu’une classe ?Un prénom MangerUn nom BoireUne date de naissance ParlerUne adresse DormirUn lieu de naissance Rougir Ce sont les propriétésElle a des attributs et des méthodes
  14. 14. Qu’est qu’une classe ?Un prénom MangerUn nom BoireUne date de naissance ParlerUne adresse DormirUn lieu de naissance RougirElle a des attributs et des méthodes
  15. 15. Qu’est qu’une classe ? Un prénom Manger Un nom Boire Une date de naissance Parler Une adresse Dormir Un lieu de naissance RougirCe sont les actionsqu’il peut réaliser Elle a des attributs et des méthodes
  16. 16. Qu’est qu’une classe ?public class Fille {private int id ;private String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;} On donne le nom de la classe
  17. 17. Qu’est qu’une classe ?public class Fille {private int id ;private String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;} Ce sont les attributs.
  18. 18. Qu’est qu’une classe ?public class Fille{private int id ;private String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;} On les appelles variables d’instance.
  19. 19. Qu’est qu’une classe ?public class Fille {private int id ; On les appelles variablesprivate String nom;private String prenom; d’instance.private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;} Elles sont communes à toutes les instances.
  20. 20. Qu’est qu’une classe ?public class Fille {private int id ; On les appelles variablesprivate String nom;private String prenom; d’instance.private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;} Elles sont communes à toutes les instances. Elles sont accessible uniquement par le biais d’un objet.
  21. 21. Qu’est qu’une classe ?public class Fille{private int id ; Les variables de classeprivate String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;}
  22. 22. Qu’est qu’une classe ?public class Fille {private int id ; Les variables de classeprivate String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;} Une variable de classe est une variable qui est commune à toutes Les instances de cette classe. Une variable de ce type peut être accessible sans avoir à passer par une instances de la classe.
  23. 23. Qu’est qu’un objet?Un objet est l’instanciation d’une classe.
  24. 24. Qu’est qu’une classe ?public class Actrice{private int id ; Les variables de classeprivate String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;}Une variable de classe est une variable qui est commune à toutesLes instances de cette classe. Une variable de ce type peut êtreaccessible sans avoir à passer par une instances de la classe.
  25. 25. Qu’est qu’une classe ?public class Actrice {private int id ; Les variables de classeprivate String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nbFille =0 ;}Une variable de classe est une variable qui est commune à toutesLes instances de cette classe. Une variable de ce type peut êtreaccessible sans avoir à passer par une instances de la classe.
  26. 26. Qu’est qu’un objet?Un objet est l’instanciation d’une classe.
  27. 27. Qu’est qu’un objet?
  28. 28. Qu’est qu’un objet?Voici un objet
  29. 29. Qu’est qu’un objet?Voici un objet instanciéà partir de la classeActrice.
  30. 30. Qu’est qu’un objet?Voici un objet instanciéà partir de la classeActrice. Il dispose de toutes les propriétés et méthodes définies dans la classe Fille.
  31. 31. Qu’est qu’un objet?Voici un objet instanciéà partir de la classeActrice. Il dispose de toutes les propriétés et méthodes définies dans la classe Fille.
  32. 32. Qu’est qu’un objet? prénom : Cérise
  33. 33. Qu’est qu’un objet?Voici un autre objet
  34. 34. Qu’est qu’un objet?Voici un autre objet Elle a un prénom : Audrey
  35. 35. Qu’est qu’un objet? Voici un autre objetIl a un prénom : Jeanne
  36. 36. Qu’est qu’un objet?Ce sont tousdes objets obtenu à partir d’un modèle
  37. 37. Qu’est qu’un objet ?Actrice est un modèle (classe) ;
  38. 38. Qu’est qu’un objet ?Actrice est un modèle (classe) ;Tandis que Cérise et Audrey sontdes instances (objet).
  39. 39. Qu’est qu’un objet ?Actrice est un modèle (classe) ;Tandis que Cérise et Audrey sontdes instances (objet).Ils ont été instanciés à partir d’unmodèle (classe).
  40. 40. Création d’un objet Nom de la classe nomObjet ; Actrice Audrey ;
  41. 41. Création d’un objet Nom de la classe nomObjet ; Actrice Audrey ; On vient de déclarer un objet de type Actrice Qui s’appelle Audrey.
  42. 42. Création d’un objet Nom de la classe nomObjet ; Actrice Audrey ; Il va falloir construire l’objet.
  43. 43. Création d’un objet Nom de la classe nomObjet ; Actrice Audrey ; Il va falloir construire l’objet. Audrey = new Actrice();
  44. 44. Création d’un objet Nom de la classe nomObjet ; Actrice Audrey ; Il va falloir construire l’objet. Audrey = new Actrice(); new permet de construire l’objet.
  45. 45. Création d’un objet Actrice Audrey = new Actrice(); On peut aussi créer un objet en 1 étape.
  46. 46. Création d’un objet La notion de constructeurUn constructeur a pour objectif d’initialiser les attributs de laclasse.Un constructeur a plusieurs caractéristiques :
  47. 47. Création d’un objet La notion de constructeurUn constructeur a pour objectif d’initialiser les attributs de laclasse.Un constructeur a plusieurs caractéristiques : Il se nomme de la même manière que la classe. Il ne détient pas de valeur de retour. Il n’est pas obligatoire d’avoir un constructeur.
  48. 48. Création d’un objet La notion de constructeurUn constructeur a pour objectif d’initialiser les attributs de laclasse.Un constructeur a plusieurs caractéristiques : Il se nomme de la même manière que la classe. Il ne détient pas de valeur de retour. Il n’est pas obligatoire d’avoir un constructeur.
  49. 49. Création d’un objet La notion de constructeurUn constructeur a pour objectif d’initialiser les attributs de laclasse.Un constructeur a plusieurs caractéristiques : Il se nomme de la même manière que la classe. Il ne détient pas de valeur de retour. Il n’est pas obligatoire d’avoir un constructeur.
  50. 50. La notion de constructeurpublic class Actrice {private int id ;private String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nb Actrice =0 ;Actrice(int id, String nom,String prenom,String dateNaissance,String lieuNaissance){this.id=id;this.nom=nom;this.prenom=prenom;this.dateNaissance=dateNaissance;this.lieudeNaissance=lieuNaissance;this.nb Actrice ++;} }
  51. 51. La notion de constructeurpublic class Actrice {private int id ;private String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nb Actrice =0 ;Actrice(int id, String nom,String prenom,String dateNaissance,String lieuNaissance){this.id=id;this.nom=nom;this.prenom=prenom;this.dateNaissance=dateNaissance;this.lieudeNaissance=lieuNaissance;this.nb Actrice ++;} }
  52. 52. La notion de constructeur On dit que le premier argument reçupublic class Actrice {private int id ;private String nom; va être placé dans id.private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nb Actrice =0 ;Actrice(int id, String nom,String prenom,String dateNaissance,String lieuNaissance){this.id=id;this.nom=nom;this.prenom=prenom;this.dateNaissance=dateNaissance;this.lieudeNaissance=lieuNaissance;this.nb Actrice ++;} }
  53. 53. La notion de constructeurpublic class Actrice { Ainsi de suite, pour chaque attribut.private int id ;private String nom;private String prenom;private String dateNaissance;private String lieudeNaissance;public static int nb Actrice =0 ;Actrice(int id, String nom,String prenom,String dateNaissance,String lieuNaissance){this.id=id;this.nom=nom;this.prenom=prenom;this.dateNaissance=dateNaissance;this.lieudeNaissance=lieuNaissance;this.nb Actrice ++;} }
  54. 54. La notion de constructeurpublic class Actrice {private int id ; this donne le nom de la classeprivate String nom;private String prenom;private String dateNaissance; Ici Fille. C’est-à-dire, celui-ci .private String lieudeNaissance;public static int nb Actrice =0 ;Actrice(int id, String nom,String prenom,String dateNaissance,String lieuNaissance){this.id=id;this.nom=nom;this.prenom=prenom;this.dateNaissance=dateNaissance;this.lieudeNaissance=lieuNaissance;this.nb Actrice ++;} }
  55. 55. La notion de constructeur Il est possible de mettre en place plusieurs constructeurs.
  56. 56. La notion de constructeur Il est possible de mettre en place plusieurs constructeurs. Si un constructeur est défini dans une classe,Il faudra obligatoirement l’utiliser.
  57. 57. La notion de constructeur Il est possible de mettre en place plusieurs constructeurs. Si un constructeur est défini dans une classe,Il faudra obligatoirement l’utiliser.
  58. 58. La notion de constructeur Il est possible de mettre en place plusieurs constructeurs. Si un constructeur est défini dans une classe,Il faudra obligatoirement l’utiliser.Actrice Jeanne = new Actrice() ;
  59. 59. La notion de constructeur Il est possible de mettre en place plusieurs constructeurs. Si un constructeur est défini dans une classe,Il faudra obligatoirement l’utiliser. Actrice Jeanne = new Actrice () ;LE COMPILATEUR VA REFUSER DE CREER UN OBJET TYPE Actrice
  60. 60. La notion de constructeur Actrice Jeanne = new Actrice () ;LE COMPILATEUR VA REFUSER DE CREER UN OBJET TYPE FILLE La classe Actrice a un constructeur.
  61. 61. L’objet Un objet a trois caractéristiques.
  62. 62. L’objet Un objet a trois caractéristiques.
  63. 63. L’objet Un objet a trois caractéristiques. Le comportement de l’objet
  64. 64. L’objet Un objet a trois caractéristiques. Le comportement de l’objet Quelles sont les méthodes que l’on peut lui appliquer?
  65. 65. L’objet Un objet a trois caractéristiques. Le comportement de l’objet Quelles sont les méthodes que l’on peut lui appliquer? Par exemple, un poisson peut-il marcher? Un avion peut-il acheter ?
  66. 66. L’objet Un objet a trois caractéristiques. L’état d’un objet Quel est la réaction de l’objet lorsqu’on lui applique Une méthode?
  67. 67. L’objet Un objet a trois caractéristiques. L’état d’un objet Dans un Système d’information, chaque commande est différencié par une référence unique.
  68. 68. L’objet Un objet a trois caractéristiques. L’état d’un objet Dans un Système d’information, chaque commande est différencié par une référence unique. Elle va avoir un état : En cours d’acheminement, envoyée , délivrée.
  69. 69. L’objet Un objet a trois caractéristiques. L’état d’un objet Si une commande est expédié, peut-on le modifier? C’est-à-dire, ajouter un article.
  70. 70. L’objet Chaque objet est unique. Chaque objet a une identité.
  71. 71. L’objet Chaque objet est unique.
  72. 72. L’objet Chaque objet est unique.Même dans le cas de 2 jumeaux
  73. 73. L’objet Chaque objet est unique.Même dans le cas de 2 jumeaux
  74. 74. L’objet Chaque objet est unique.Même dans le cas de 2 jumeauxIls peuvent avoir le même prénom,
  75. 75. L’objet Chaque objet est unique.Même dans le cas de 2 jumeauxIls peuvent avoir le même prénom,Le même nom, la même adresse.
  76. 76. L’objet Chaque objet est unique.Même dans le cas de 2 jumeauxIls peuvent avoir le même prénom,Le même nom, la même adresse.La même date de naissance,Le même lieu de naissance.
  77. 77. L’objet Chaque objet est unique. Même dans le cas de 2 jumeauxChacun aura une empreinte digitaleDifférente.
  78. 78. L’objet Chaque objet est unique. Même dans le cas de 2 jumeauxChacun aura une empreinte digitaleDifférente.
  79. 79. L’objet Chaque objet est unique.
  80. 80. Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels : Type de Retour NomMethode(type1 argument1,type2 argument, type3 argument3) { Corps de la méthode }  Le nom de la méthode  Les arguments  La valeur de retour  Le corps de la méthode
  81. 81. Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels : Type de Retour NomMethode(type1 argument1,type2 argument, type3 argument3) { Corps de la méthode }  Le nom de la méthode  Les arguments  La valeur de retour  Le corps de la méthode
  82. 82. Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels : Type de Retour NomMethode(type1 argument1,type2 argument, type3 argument3) { Corps de la méthode }  Le nom de la méthode  Les arguments  La valeur de retour  Le corps de la méthode
  83. 83. Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels : Type de Retour NomMethode(type1 argument1,type2 argument, type3 argument3) { Corps de la méthode }  Le nom de la méthode  Les arguments  La valeur de retour  Le corps de la méthode
  84. 84. Les méthodesDans le langage JAVA, une méthode détient quatre points essentiels : Type de Retour NomMethode(type1 argument1,type2 argument, type3 argument3) { Corps de la méthode }  Le nom de la méthode  Les arguments  La valeur de retour  Le corps de la méthode
  85. 85. Les méthodesLes arguments : ce sont les arguments que l’on souhaite passer à la méthode. Elles sont obligatoirement séparés par une virgule.Le nom de la méthode : C’est le nom que l’on attribue à la méthode. Pour l’appeler, il faudra utiliser ce nom.La valeur de retour : Chaque méthode peut retourner une valeur. Il faudra la spécifier dans le corps de la méthode.Si le type est void, il ne retournera rien.Par contre, si on spécifie un type de retour, il faudra obligatoirement retourner une valeur. Dans le cas contraire, une erreur de compilation sera générée.
  86. 86. Les méthodesLes arguments : ce sont les arguments que l’on souhaite passer à la méthode. Elles sont obligatoirement séparés par une virgule.Le nom de la méthode : C’est le nom que l’on attribue à la méthode. Pour l’appeler, il faudra utiliser ce nom.La valeur de retour : Chaque méthode peut retourner une valeur. Il faudra la spécifier dans le corps de la méthode.Si le type est void, il ne retournera rien.Par contre, si on spécifie un type de retour, il faudra obligatoirement retourner une valeur. Dans le cas contraire, une erreur de compilation sera générée.
  87. 87. Les méthodesLes arguments : ce sont les arguments que l’on souhaite passer à la méthode. Elles sont obligatoirement séparés par une virgule.Le nom de la méthode : C’est le nom que l’on attribue à la méthode. Pour l’appeler, il faudra utiliser ce nom.La valeur de retour : Chaque méthode peut retourner une valeur. Il faudra la spécifier dans le corps de la méthode. Si le type est void, il ne retournera rien. Par contre, si on spécifie un type de retour, il faudra obligatoirement retourner une valeur. Dans le cas contraire, une erreur de compilation sera générée.
  88. 88. Les méthodes Getter et Setter Les accesseurs permettent de modifier ou récupérer les attributs de la classe. Pour des raisons de sécurité, les attributs doivent être déclarées private.
  89. 89. Les méthodes Getter et SetterLes accesseurs permettent de modifier ou récupérer les attributs de la classe. Pour des raisons de sécurité, les attributs doivent être déclarées private.
  90. 90. Les méthodespublic class Actrice {private String nom;public void Setnom(String nom){ this.nom=nom;}public String Getnom(){return this.nom;}}
  91. 91. Les méthodespublic class Actrice {private String nom; Voilà une variable d’instance.public void Setnom(String nom){ this.nom=nom;}public String Getnom(){return this.nom;}}
  92. 92. Les méthodespublic class Fille{ Voilà le setteur.private String nom; Cette méthode va me permettre D’affecter un nom à mon fille.public void Setnom(String nom){ this.nom=nom;}public String Getnom(){return this.nom;}}
  93. 93. Les méthodespublic class Fille { Voilà le getteurprivate String nom; Cette méthode va me permettre De récupérer le nom de mon objet.public void Setnom(String nom){ this.nom=nom;}public String Getnom(){return this.nom;}}
  94. 94. L’encapsulation C’est un mécanisme fondamental de la Programmation Orientée objet.
  95. 95. L’encapsulation C’est un mécanisme fondamental de la Programmation Orientée objet.
  96. 96. L’encapsulation L’encapsulation consiste à protéger les informations contenues dans un objet.
  97. 97. L’encapsulation L’encapsulation consiste à protéger les informations contenues dans un objet.
  98. 98. L’encapsulation L’encapsulation consiste à protéger les informations contenues dans un objet.
  99. 99. L’encapsulation L’encapsulation consiste à protéger les informations contenues dans un objet.
  100. 100. L’encapsulationUn utilisateur peut manipuler les données à l’aide des méthodes.
  101. 101. L’encapsulationUn utilisateur peut manipuler les données à l’aide des méthodes.
  102. 102. L’encapsulationUn utilisateur peut manipuler les données à l’aide des méthodes.
  103. 103. L’encapsulation Il existe 3 niveaux d’accès.
  104. 104. L’encapsulation Il existe 3 niveaux d’accès. Public
  105. 105. L’encapsulation Il existe 3 niveaux d’accès. Public, Privé,
  106. 106. L’encapsulation Il existe 3 niveaux d’accès. Public, Privé, Protégé
  107. 107. L’encapsulation Public
  108. 108. L’encapsulation Publicaccessible par tout le monde
  109. 109. L’encapsulation Private
  110. 110. L’encapsulation PrivateUniquement manipulable par l’objet elle-même.
  111. 111. L’encapsulation PrivateUniquement manipulable par l’objet elle-même.
  112. 112. L’encapsulation Protégé manipulable par l’objet elle- même
  113. 113. L’encapsulation Protégé manipulable par l’objet elle- même Et Les enfants.
  114. 114. L’encapsulation Protégé manipulable par l’objet elle- même Et Les enfants.
  115. 115. L’encapsulation
  116. 116. L’encapsulationUne Actrice : Elle s’appelle Laura
  117. 117. L’encapsulation Une fille : Elle s’appelle LauraDemanderson nomest publique
  118. 118. L’encapsulation Une fille : Elle s’appelle LauraDemander Accessible parson nom tout le mondeest publique
  119. 119. L’encapsulation Une fille : Elle s’appelle LauraDemander Accessible parson nom tout le mondeest publique Toute personne qui le souhaite peut lui demander son nom
  120. 120. L’encapsulationLaura peut accepterde s’embrasserAvec un hommedont elle est séduite.
  121. 121. L’encapsulationLaura peut accepterde s’embrasserAvec un hommedont elle est séduite.
  122. 122. L’encapsulationLaura peut accepter de s’embrasserAvec un homme dontelle est séduite. S’embrasser Est Privée
  123. 123. L’encapsulationLaura peut accepterde s’embrasserAvec un hommedont elle est séduite. Si un garçon souhaite embrasser Laura, il faudra qu’il séduise Laura.
  124. 124. L’encapsulationLaura peut accepterde s’embrasser Séduire est publique.Avec un hommedont elle est séduite. Si un garçon souhaite embrasser Laura Il faudra qu’ilséduise Laura.
  125. 125. L’encapsulation Séduire est publique. La méthode Séduire va appeler la méthode S’embrasser qui est privé.
  126. 126. L’encapsulation Que se passe t-il si un homme embrasse Laura sans l’avoir séduite ?
  127. 127. L’encapsulationQue se passe t-il si un homme embrasse Laura sans l’avoir séduite ?
  128. 128. L’encapsulation Que se passe t-il si un homme embrasseLaura sans l’avoir séduite ?Il va prendre une gifle
  129. 129. L’encapsulation Que se passe t-il si un homme embrasseLaura sans l’avoir séduite ? En effet, il y’a violation de la règle d’encapsulation.
  130. 130. L’encapsulation Que se passe t-il si un homme embrasse Laura sans l’avoir séduite ? En effet, il y’a violation de la règle d’encapsulation.
  131. 131. L’encapsulationLaura a aussi des données protégés.
  132. 132. L’encapsulation Laura a aussi des données protégés.Son argent en banque
  133. 133. L’encapsulation Personne d’autre ne pourra toucher à cette argent.Il n’ y a que LauraEt ses enfants quipourront l’utiliser.Son argent en banque
  134. 134. L’encapsulation Personne d’autre ne pourra toucher à cette argen Laura a aussi des donnéesIl n’ y a que Laura protégés.Et ses enfants quiPourront l’utiliser. I Son argent en banque
  135. 135. L’héritage C’est un concept fondamental de la programmation orienté objet.
  136. 136. L’héritage C’est un concept fondamental de la programmation orienté objet.
  137. 137. L’héritageIl offre la possibilité de réutiliser les composants logiciels existants.
  138. 138. L’héritageIl offre la possibilité de réutiliser les composants logiciels existants. Une classe dérivé(=enfant) pourra utiliser les méthodes et attributs de la classe parent(=super classe).
  139. 139. L’héritageIl offre la possibilité de réutiliser les composants logiciels existants. Une classe dérivé(=enfant) pourra utiliser les méthodes et attributs de la classe parent(=super classe) et pourra ajouter ses propres propriétés.
  140. 140. L’héritageIl offre la possibilité de réutiliser les composants logiciels existants. Une classe dérivé(=enfant) pourra utiliser les méthodes et attributs de la classe parent(=super classe) et pourra ajouter ses propres propriétés.
  141. 141. L’héritage Une classe enfant peut accéder uniquement au donnée publique et protégée.
  142. 142. L’héritage Une classe enfant peut accéder uniquement au donnée publique et protégée.
  143. 143. L’héritageCe qui offre la possibilité de ne pas avoir à répartir de 0.
  144. 144. L’héritage
  145. 145. L’héritageIl n’y a pas d’héritage multiple en Java
  146. 146. L’héritageUne personne a un nom, un prénom, un numéro de SécuritéSociale.Un étudiant a un nom, un prénom, un numéro de SécuritéSociale,et une note.Un professeur a un nom, un prénom, un numéro deSécurité Sociale, et une matière.
  147. 147. L’héritageUne personne a un nom, un prénom, un numéro de SécuritéSociale.Un étudiant a un nom, un prénom, un numéro de SécuritéSociale,et une note.Un professeur a un nom, un prénom, un numéro deSécurité Sociale, et une matière. Quels sont les propriétés communes au 3 ?
  148. 148. L’héritageUne personne a un nom, un prénom, un numéro deSécurité Sociale.Un étudiant a un nom, un prénom, un numéro de SécuritéSociale, et une note.Un professeur a un nom, un prénom, un numéro deSécurité Sociale, et une matière. Quels sont les propriétés communes au 3 ?
  149. 149. L’héritageOn peut centraliser le nom, le prénom, le numéro de Sécurité Sociale au sein d’une classe Personne. La classe Professeur et La classe Etudiant pourront les utiliser par le biais de l’héritage.
  150. 150. L’héritage Un professeur est une personne. Un étudiant est une personne.
  151. 151. L’héritage Un professeur est une personne. Un étudiant est une personne. Il s’agit de la relation « est un »
  152. 152. L’héritage Un professeur est une personne. Un étudiant est une personne. Il s’agit de la relation « est un »
  153. 153. L’héritage Sans héritage, on aurait Personne Etudiant Professeur #name : String -name : String -name : String # -prenom# String : -prenom# String : #prenom : String -numSS :String -numSS :String #numSS :String -note : int - Matiere :String+getName():String +getName():String +getName():String ++setName(String n): String +setName(String n): String +setName(String n): String+getprenom():String + +getprenom():String + +getprenom():String+setprenom(String n): String +setprenom(String n): String +setprenom(String n): String+setNum(int n) : void +setNum(int n) : void +setNum(int n) : void+getNum():int +getNum():int +getNum():int+getPersonne(): void +getNote):int setMatiere(String n) : void+setPersonne(String f,String +setNote(int n):void +getMatiere):Stringn, int s) +getEtudiant(): void +getProfesseur(): void +setEtudiant(String f,String +setProfesseur(String n, int s,int n) f,String n, String m)
  154. 154. L’héritage Sans héritage, on aurait Personne Etudiant Professeur #name : String -name : String -name : StringQuels sont les propriétés et # #prenom : String #numSS :String -prenom# String : -numSS :String -note : int -prenom# String : -numSS :String - Matiere :Stringméthodes identiques? +getName():String + +setName(String n): String +getprenom():String +setprenom(String n): String +getName():String +setName(String n): String + +getprenom():String +setprenom(String n): String +getName():String +setName(String n): String + +getprenom():String +setprenom(String n): String +setNum(int n) : void +setNum(int n) : void +setNum(int n) : void +getNum():int +getNum():int +getNum():int +getPersonne(): void +getNote):int setMatiere(String n) : void +setPersonne(String f,String +setNote(int n):void +getMatiere):String n, int s) +getEtudiant(): void +getProfesseur(): void +setEtudiant(String f,String +setProfesseur(String n, int s,int n) f,String n, String m)
  155. 155. L’héritage Sans héritage, on aurait Personne Etudiant Professeur #name : String -name : String -name : String # -prenom# String : -prenom# String : #prenom : String -numSS :String -numSS :String #numSS :String -note : int - Matiere :String+getName():String +getName():String +getName():String ++setName(String n): String +setName(String n): String +setName(String n): String+getprenom():String + +getprenom():String + +getprenom():String+setprenom(String n): String +setprenom(String n): String +setprenom(String n): String+setNum(int n) : void +setNum(int n) : void +setNum(int n) : void+getNum():int +getNum():int +getNum():int+getPersonne(): void +getNote):int setMatiere(String n) : void+setPersonne(String f,String +setNote(int n):void +getMatiere):Stringn, int s) +getEtudiant(): void +getProfesseur(): void +setEtudiant(String f,String +setProfesseur(String n, int s,int n) f,String n, String m)
  156. 156. L’héritage Avec héritage, on aurait
  157. 157. L’héritage Avec héritage, on auraitN’est-il pas plus simpleD’implémenter ce modèle?
  158. 158. L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}
  159. 159. L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}
  160. 160. L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}Le mot clé extends indique au compilateurque la classe Etudiant héritede la classe Personne.
  161. 161. L’héritagepublic class Personne {}public class Professeur extends Personne {}public class Etudiant extends Personne {}Le mot clé extends indique au compilateurque la classe Etudiant héritede la classe Personne.
  162. 162. Le polymorphisme Le polymorphisme est un concept fondamental de la programmation orientée objet.
  163. 163. Le polymorphisme Le polymorphisme est un concept fondamental de la programmation orientée objet. Dans la langue grec, il signifie « peut prendre plusieurs formes »
  164. 164. Le polymorphisme Le polymorphisme est un concept fondamental de la programmation orientée objet. Dans la langue grec, il signifie « peut prendre plusieurs formes »
  165. 165. Le polymorphismeLe polymorphisme offre la possibilité de définir plusieurs méthodes portant le même nom mais possédant différents paramètres.
  166. 166. Le polymorphismeLe polymorphisme offre la possibilité de définir plusieurs méthodes portant le même nom mais possédant différents paramètres.
  167. 167. Le polymorphismeLe polymorphisme offre la possibilité de définir plusieurs méthodes portant le même nom mais possédant différents paramètres.
  168. 168. Le polymorphismeLe polymorphisme offre la possibilité de définir plusieurs méthodes portant le même nom mais possédant différents paramètres.
  169. 169. Le polymorphismeLe polymorphisme offre la possibilité de définir plusieurs méthodes portant le même nom mais possédant différents paramètres. Le choix de la méthode se fera automatiquement en fonction des paramètres reçus.
  170. 170. Le polymorphismeLe polymorphisme offre la possibilité de définir plusieurs méthodes portant le même nom mais possédant différents paramètres. Le choix de la méthode se fera automatiquement en fonction des paramètres reçus.
  171. 171. Le polymorphismePrenons l’exemple d’un chien qu’une personne essaye d’approcher.Chaque chien a une manière différente pour accueillir les inconnus.Et cela dépend bien évidemment de la manière dont vous l’approchez.
  172. 172. Le polymorphismeSi vous lui jetez une pierre.Sa méthode accueillir va recevoir en argument une pierre.Voilà comment il va réagir.
  173. 173. Le polymorphismeSi vous lui jetez une pierre.Sa méthode accueillir va recevoir en argument une pierre.Voilà comment il va réagir.
  174. 174. Le polymorphismeSi vous lui donner à manger.Sa méthode accueillir va recevoir en argument de la nourriture.Voilà comment il va réagir.
  175. 175. Le polymorphismeSi vous lui donner à manger.Sa méthode accueillir va recevoir en argument de la nourriture.Voilà comment il va réagir.
  176. 176. Le polymorphismeNous venons de voir que le même objet Chien pouvaitavoirdes comportements différents. La même méthodeaccueillir vaavoir un comportement différent en fonction desparamètres reçus.
  177. 177. Le polymorphismeNous venons de voir que le même objet Chien pouvaitavoirdes comportements différents. La même méthodeaccueillir vaavoir un comportement différent en fonction desparamètres reçus.
  178. 178. Classe Abstraite Une classe abstraite est une classe dont l’implémentation n’est pas complète.
  179. 179. Classe Abstraite Une classe abstraite est une classe dontl’implémentation n’est pas complète. Elle va servir de modèle pour les classes enfants.
  180. 180. Classe Abstraite Une classe abstraite est une classe dont l’implémentation n’est pas complète. Elle va servir de modèle pour les classes enfants.
  181. 181. Classe Abstraite Une classe abstraite est une classe dont l’implémentation n’est pas complète. Elle va servir de modèle pour les classes enfants. La classe abstraite va définir des méthodes en fournissant leur signature.
  182. 182. Classe Abstraite Une classe abstraite est une classe dont l’implémentation n’est pas complète. Elle va servir de modèle pour les classes enfants. La classe abstraite va définir des méthodes en fournissant leur signature.
  183. 183. Classe AbstraiteLe type de retour
  184. 184. Classe AbstraiteLe type de retourLe nom
  185. 185. Classe AbstraiteLe type de retourLe nomLe type d’argument
  186. 186. Classe AbstraiteLe type de retourLe nomLe type d’argumentC’est une assurance pour la classe de baseles classes enfants respecteront bien lesSpécifications.
  187. 187. Classe AbstraiteLe type de retourLe nomLe type d’argumentC’est une assurance pour la classede base queles classes enfants respecteront bien lesSpécifications définie
  188. 188. Classe abstraiteUne classe est dite abstraite si et seulement si elle détient une ouplusieurs méthodes abstraites.
  189. 189. Classe abstraite Il n’est pas possible d’instancier une classe abstraite.
  190. 190. Classe abstraite Il n’est pas possible d’instancier une classe abstraite.
  191. 191. Classe abstraite Par exemple, un animal domestique.
  192. 192. Classe abstraite Par exemple, un animal domestique.On sait qu’il aura obligatoirementUne méthode parler.Tous les animaux domestiques parlentmais chacune a sa manière.
  193. 193. Classe abstraite Par exemple, un animal domestique.Les oiseaux vont dire : Cik Cik Cik
  194. 194. Classe abstraite Par exemple, un animal domestique.Le chat va dire : Miaou Miaou
  195. 195. Classe abstraite Par exemple, un animal domestique.Le chien va dire : Hav Hav Hav
  196. 196. Classe abstraiteSi l’on définie une classe abstraite Animal Domestique, on va y placer La méthode abstraite « parler » . Ainsi chaque classe enfant va implémenter la méthode parler à sa manière.
  197. 197. Classe abstraite Par exemple, un animal domestique.Ainsi, la classe Chien va dire : Hav Hav Hav
  198. 198. Classe abstraite Par exemple, un animal domestique.Ainsi, la classe Oiseau va dire : Cik Cik Cik
  199. 199. Les classes Interfaces Nous avons vu auparavant que l’héritage multiple n’existe pas en Java. Nous avons vu que les classes abstraites ne définissent que la signature des méthodes.
  200. 200. Les classes InterfacesNous avons vu auparavant quel’héritage multiple n’existe pas en Java. Nous avons vu que les classes abstraites ne définissent que la signature des méthodes.
  201. 201. Les classes Interfaces Une classe interface va aussi définir simplement les signatures des méthodes pour les classes enfants.
  202. 202. Les classes Interfaces Une classe interface va aussi définir simplement les signatures des méthodes pour les classes enfants.
  203. 203. Les classes Interfaces Une classe interface va aussi définir simplement les signatures des méthodes pour les classes enfants. Mais celui-ci est plus riche qu’une classe abstraite. Savez vous pourquoi?
  204. 204. Les classes Interfaces Une classe interface va aussi définir simplement les signatures des méthodes pour les classes enfants. Mais celui-ci est plus riche qu’une classe abstraite. Savez vous pourquoi?
  205. 205. Les classes Interfaces Il est possible d’hériter d’une seule classe car l’héritage multiple n’existe pas en Java.
  206. 206. Les classes Interfaces Il est possible d’hériter d’une seule classe car l’héritage multiple n’existe pas en Java. Mais une classe peut implémenter plusieurs classes interfaces.
  207. 207. Les classes Interfaces Il est possible d’hériter d’une seule classe car l’héritage multiple n’existe pas en Java. Mais une classe peut implémenter plusieurs classes interfaces.
  208. 208. Les classes Interfaces Il est possible d’hériter d’une seule classe car l’héritage multiple n’existe pas en Java. Mais une classe peut implémenter plusieurs classes interfaces. Une classe peut hériter une classe C1 et implémenter une ou plusieurs classes interfaces I1,I2,I3,I4,…….
  209. 209. Les classes Interfaces Il est possible d’hériter d’une seule classe car l’héritage multiple n’existe pas en Java. Mais une classe peut implémenter plusieurs classes interfaces. Une classe peut hériter une classe C1 et implémenter une ou plusieurs classes interfaces I1,I2,I3,I4,…….
  210. 210. Les classes Interfaces Il est possible d’hériter d’une seule classe car l’héritage multiple n’existe pas en Java. Mais une classe peut implémenter plusieurs classes interfaces. Une classe peut hériter une classe C1 et implémenter une ou plusieurs classes interfaces I1,I2,I3,I4,…….
  211. 211. Les classes Interfaces Mickael JacksonEst un danseur Est un chanteur
  212. 212. Les classes Interfaces Mickael Jackson Un chanteur n’est pas Un danseur
  213. 213. Les classes Interfaces Mickael Jackson Un chanteur n’est pas Un danseur Un danseur n’est pas Un chanteur
  214. 214. Les classes Interfaces Comment faire ?Une classe ne peut hériter d’une seule classe. Voilà, les classes interfaces vont nous aider.
  215. 215. Les classes Interfaces On va faire appel à deux classes interfaces. Danseur Et Chanteur
  216. 216. Les classes Interfaces On va faire appel à deux classes interfaces. Danseur Et ChanteurMickael Jackson va implémenter ces 2 interfaces.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×