L'héritage hiérarchique en Java est l'un des types d'héritage en Java. L'héritage est l'une des caractéristiques importantes d'un système de programmation orienté objet (oups). Un héritage est un mécanisme par lequel une classe hérite ou acquiert tous les attributs et comportements de l’autre classe. La classe hérite des attributs et des comportements appelés classe parent ou super ou classe de base, et la classe hérite des attributs et des comportements sont appelés classe enfant ou classe dérivée. Dans l'héritage hiérarchique, les multiples classes enfants héritent de la classe unique ou la classe unique est héritée par plusieurs classes enfants. L'utilisation de l'héritage en Java est destinée à la réutilisabilité du code et au polymorphisme dynamique (remplacement de méthode).
Nous pouvons comprendre plus clairement l'héritage hiérarchique à l'aide du diagramme ci-dessous.
PUBLICITÉ Cours populaire dans cette catégorie MAÎTRISÉE JAVA - Spécialisation | 78 séries de cours | 15 tests simulésComme dans l'exemple ci-dessus, ClassB et ClassC héritent de la même ou d'une seule classe ClassA. Ainsi, les variables et méthodes ClassA sont réutilisées dans les deux classes, ClassB et ClassC. Le diagramme ci-dessus montre que plusieurs classes enfants ont la même classe parent, ce type d'héritage est donc appelé héritage hiérarchique.
Syntaxe de l'héritage unique en Java :
class Subclassname1 extends Superclassname { // variables and methods }
Syntaxe de l'héritage hiérarchique en Java :
class Subclassname1 extends Superclassname { // variables and methods } class Subclassname2 extends Superclassname { // variables and methods }
Le sens de « étend » est d'augmenter la fonctionnalité. Le mot-clé extends indique l'héritage ; c'est-à-dire que nous créons une nouvelle classe qui dérive d'une classe existante.
Voici les différents exemples :
Exemple d'héritage hiérarchique en Java pour hériter d'une variable de la superclasse. Ensuite, nous écrivons le code Java pour comprendre l'héritage hiérarchique pour hériter d'une variable de la superclasse avec l'exemple suivant.
Code :
package P1; class Employee{ float salary = 40000; } class PermanentEmp extends Employee{ double hike = 0.5; } class TemporaryEmp extends Employee{ double hike = 0.35; } public class HerInheritanceDemo { public static void main(String args[]){ PermanentEmp p = new PermanentEmp(); TemporaryEmp t = new TemporaryEmp(); // All objects of inherited classes can access the variable of class Employee System.out.println("Permanent Employee salary is :" +p.salary); System.out.println("Hike for Permanent Employee is:" +p.hike); System.out.println("Temporary Employee salary is :" +t.salary); System.out.println("Hike for Temporary Employee is :" +t.hike); } }
Sortie :
Comme dans le code ci-dessus, les classes PermanentEmp et TemporaryEmp sont la sous-classe, et Employee est la superclasse et les objets de ces sous-classes accèdent à la variable de la superclasse, qui montre le concept ou la fonctionnalité d'héritage hiérarchique en Java.
Exemple d'héritage hiérarchique en Java pour hériter de la méthode de la superclasse. Ensuite, nous écrivons le code Java pour comprendre cela plus clairement en Java avec l'exemple suivant.
Code :
package P1; class Employee{ float salary = 40000; void dispSalary() { System.<em><i>out</i></em>.println("The Employee salary is :" +salary); } } class PermanentEmp extends Employee{ double hike = 0.5; void incrementSalary() { System.out.println("The Permanent Employee incremented salary is :" +(salary+(salary * hike))); } } class TemporaryEmp extends Employee{ double hike = 0.35; void incrementSalary() { System.out.println("The Temporary Employee incremented salary is :" +(salary+(salary * hike))); } } public class HerInheritanceDemo { public static void main(String args[]){ PermanentEmp p = new PermanentEmp(); TemporaryEmp t = new TemporaryEmp(); // All objects of inherited classes can access the method of class Employee p.dispSalary(); p.incrementSalary(); t.dispSalary(); t.incrementSalary(); } }
Sortie :
Comme dans le code ci-dessus, les classes PermanentEmp et TemporaryEmp sont la sous-classe, et Employee est la superclasse et les objets de ces sous-classes appellent la méthode de la superclasse, qui montre le concept ou la fonctionnalité d'héritage hiérarchique en Java.
Par exemple pour appeler la méthode de la superclasse avec un super mot-clé. Ensuite, nous réécrivons le code Java ci-dessus pour comprendre plus clairement le fonctionnement du super mot-clé avec l'exemple suivant.
Code :
package P1; class Employee{ float salary = 40000; void dispSalary() { System.out.println("The Employee salary is :" +salary); } } class PermanentEmp extends Employee{ double hike = 0.5; void incrementSalary() { super.dispSalary(); System.out.println("The Permanent Employee incremented salary is :" +(salary+(salary * hike)) ); } } class TemporaryEmp extends Employee{ double hike = 0.35; void incrementSalary() { super.dispSalary(); System.out.println("The Temporary Employee incremented salary is :" +(salary+(salary * hike)) ); } } public class HerInheritanceDemo { public static void main(String args[]){ PermanentEmp p = new PermanentEmp(); TemporaryEmp t = new TemporaryEmp(); // All objects of inherited classes can access the variable of class Employee p.incrementSalary(); t.incrementSalary(); } }
Sortie :
Comme dans le code ci-dessus, les classes PermanentEmp et TemporaryEmp sont les sous-classes, et Employee est la superclasse, et à l'intérieur des méthodes des sous-classes, la méthode superclasse appelle avec le préfixe du mot-clé « super ». Le super mot-clé est une variable de référence en Java, utilisée pour référencer les variables et les méthodes de l'objet de classe parent. Dans la méthode principale, les objets des sous-classes appellent leur propre méthode, qui montre à nouveau le concept ou la fonctionnalité en Java.
L'héritage est une fonctionnalité dans laquelle une classe hérite de tous les attributs et comportements de l'autre classe. L'un des types d'héritage en Java est l'héritage hiérarchique en Java. Dans l'héritage hiérarchique, plusieurs classes héritent des attributs et des méthodes d'une seule classe.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!