Cours de programmation avancée en langage Java portant sur l'héritage. L'héritage permet au programmeur de dériver de nouvelles classes à partir d'une classe existante.
[...] L'héritage dans Java Objectifs du cours:L'héritage Une autre technique OO fondamentale dénommé l'héritage, pour organiser et créer des classes et promouvoir leur réutilisation. Comprendre ce qui suit: Dériver de nouvelles classes de classes existantes Créer des hiérarchies de classe: une classe parent et de classes enfants Le modificateur d`accès protected Le Polymorphisme via l`héritage Hiérarchies héréditaires pour les interfaces L'héritage L'héritage permet au programmeur de dériver de nouvelles classes à partir d'une classe existante. [...]
[...] La classe existante est dénommée la classe parent, ou super classe (superclass) ou classe de base (base class). La classe dérivé est dénommé classe enfant ou sous-classe (subclass) Comme le nom indique, l'enfant hérite des caractéristiques de la classe parent. [...]
[...] Mais ceci est non recommandé La surcharge de méthodes vs. L'outrepassement de méthodes La surcharge des méthodes concerne plusieurs méthodes dans une même classe ayant le même nom mais pas la même signature. [...]
[...] Référence à un parent:La référence super Les constructeurs ne sont pas hérités, malgré que leur visibilité est public Et pourtant souvent nous voudrions utiliser le constructeur de la classe parent afin d'initialiser la «partie du parent» dans l'objet La référence super peut-être utilisée pour invoquer la classe parent, et souvent est utilisé pour invoquer le constructeur de celui-ci Voir l'exemple Word2, pp.388-393 Le programme pilote:Words2.java public class Words2{ //Instansiates a derived class public static void main (String[] args) Dictionary2 webster= new Dictionary2(1500, 52500); webster.pageMessage(); webster.definitionMessage(); La classe parent:Book2.java public class Book2 {protected int pages;public Book2(int numPages){ pages = numPages;}// print a messagepublic void pageMessage(){ System.out.println("Number of pages: " + pages);} } La classe enfant:Dictionary2.java public class Dictionary2 extends Book2 { private int definitions; public Dictionary2(int numPages, int numDefinitions) {super(numPages);definitions = numDefinitions; } public void definitionMessage() {System.out.println("Number of definitions: " + definitions);System.out.println("Definitions per + definitions/pages); } } Plus au sujet de la référence super Un constructeur d'une classe enfant est responsable d'appeler le constructeur du parent La première ligne du constructeur doit utiliser la référence super afin d'appeler le constructeur du parent La référence super peut aussi être utilisé afin d'accéder à d'autres variables et méthodes définies dans la classe parent L'héritage simple vs. L'héritage multiple Java ne supporte que l'héritage simple, soit qu'une classe dérivée ne peut avoir qu'un seul parent! [...]
[...] C'est à dire que la classe enfant hérite: Des méthodes et données définies dans la classe parent L'héritage : Idée principale Afin d'ajuster la classe dérivée un programmeur peut: Ajouter de nouvelles variables ou méthodes, ou Modifier les éléments hérités La réutilisant de logiciel est au cœur de l'héritage En utilisant des objets logiciels existants afin de créer d'autres objets logiciels, nous bénéficions de tout le travail qui à été mis dans la création, implantation et vérification des logiciels existants. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture