Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
poo:start [2017/08/07 21:46] admin |
poo:start [2017/08/08 07:54] (Version actuelle) admin [MVC (Modèle - Vue - Contrôleur)] |
||
---|---|---|---|
Ligne 15: | Ligne 15: | ||
===== Héritage ===== | ===== Héritage ===== | ||
- | * Polymorphisme | + | * [[Substitution]] (Redéfinition) |
- | * Rédéfinition | + | * [[Surcharge]] (Polymorphisme ad-hoc) |
- | * Surcharge | + | |
* [[Classes abstraites]] | * [[Classes abstraites]] | ||
Ligne 138: | Ligne 137: | ||
<code> | <code> | ||
- | class Capitale extends Ville { | + | public class Capitale extends Ville { |
+ | |||
private String monument; | private String monument; | ||
- | + | ||
+ | //Constructeur par défaut | ||
public Capitale(){ | public Capitale(){ | ||
- | //Ce mot clé appelle le constructeur de la classe mère | + | //Ce mot clé appelle le constructeur de la classe mère |
super(); | super(); | ||
monument = "aucun"; | monument = "aucun"; | ||
- | } | + | } |
+ | |||
+ | //Constructeur d'initialisation de capitale | ||
+ | public Capitale(String nom, int hab, String pays, String monument){ | ||
+ | super(nom, hab, pays); | ||
+ | this.monument = monument; | ||
+ | } | ||
+ | |||
+ | /** | ||
+ | * Description d'une capitale | ||
+ | * @return String retourne la description de l'objet | ||
+ | */ | ||
public String decrisToi(){ | public String decrisToi(){ | ||
- | String str = super.decrisToi() + "\n \t ==>>" + this.monument+ " en est un monument"; | + | String str = super.decrisToi() + "\n \t ==>>" + this.monument + "en est un monument"; |
- | Console.WriteLine("Invocation de super.decrisToi()"); | + | |
- | | + | |
return str; | return str; | ||
- | } | + | } |
+ | |||
+ | /** | ||
+ | * @return le nom du monument | ||
+ | */ | ||
+ | public String getMonument() { | ||
+ | return monument; | ||
+ | } | ||
+ | |||
+ | //Définit le nom du monument | ||
+ | public void setMonument(String monument) { | ||
+ | this.monument = monument; | ||
+ | } | ||
} | } | ||
</code> | </code> | ||
+ | <WRAP center round important 60%> | ||
+ | Dans la plupart des langages de programmation récents, il n'est possible d'hériter que d'une seule classe mère. Il faut donc utiliser les [[poo:interfaces|interfaces]] pour répondre au mieux à l'architecture. | ||
+ | </WRAP> | ||
+ | |||
Ligne 162: | Ligne 188: | ||
* [[Interfaces]] | * [[Interfaces]] | ||
- | ===== MVC (Modèle - Vue - Contrôleur) ===== | ||
+ | |||
+ | ===== Tests unitaires ===== | ||
+ | FIXME https://openclassrooms.com/courses/programmez-en-oriente-objet-avec-c/les-tests-unitaires-5 | ||
+ | |||
+ | |||
+ | |||
+ | ===== MVVC (Modèle - Vue - Vue/Contrôleur) ===== | ||
+ | FIXME |