L'héritage est une fonction permettant d'écrire un traitement spécifique à une classe enfant tout en héritant d'un traitement commun en créant des classes enfants (sous-classes) basées sur la classe parente (super-classe). Avec l'héritage, vous n'avez pas besoin d'écrire des programmes similaires encore et encore pour rationaliser votre travail et rendre l'ensemble du code source plus facile à lire.
Lors de l'héritage, ajoutez "extend" après la déclaration de classe et spécifiez le nom de la classe parente comme source d'héritage. Cependant, une seule classe peut être héritée de Java. Il n'est pas possible d'hériter de deux classes en même temps (héritage multiple interdit).
nom de classe de classe étend le nom de classe d'origine{
Membre "Différence" avec classe parent
}
Lorsque vous utilisez la méthode ou le constructeur de la classe héritée, utilisez "super" pour y accéder et y faire référence.
nom de classe de classe étend le nom de classe d'origine(argument) {
//Appelez le constructeur de la classe parent
super(argument);
//Appelez la méthode de la partie d'instance parent
super.Nom de la méthode(argument);
}
Override consiste à remplacer le contenu de la méthode définie dans la classe parente. Il est utilisé lorsque vous souhaitez modifier un peu le contenu de la méthode définie dans la classe parente. La condition de remplacement est que le nom de la méthode, la valeur de retour et les arguments soient identiques.
[Classe parente]
public void output() {
System.out.println("Héritage");
}
[Classe enfant]
public void output() {
System.out.println("passer outre");
}
C'est un remplacement pratique car vous pouvez librement changer la méthode que vous voulez changer tout en réutilisant la classe parente (super classe), mais il y a quelques règles que vous devez suivre lors de son utilisation. Premièrement, si une méthode sur la classe parente (super-classe) a le modificateur final, la classe enfant (sous-classe) ne peut pas remplacer cette méthode. Vous devez également être conscient que les variables et les méthodes avec le modificateur private dans la superclasse ne sont pas disponibles pour les sous-classes.
La surcharge est un terme similaire au remplacement. C'est souvent faux, alors je vais l'expliquer brièvement. La surcharge est la déclaration de plusieurs «méthodes avec le même nom» dans une classe. La condition de surcharge est que ➀ le nom de la méthode est le même ➁ le type, le nombre et l'ordre des arguments sont différents.
public void output() {}
public void output(String str) {}
public void output(String str, int i) {}
public void output(int i, String str) {}
En utilisant l'héritage de classe, la classe enfant n'a pas besoin de réécrire les variables membres et les méthodes membres de la classe parent. Cela rendra également le code plus facile à lire et à réparer et à maintenir ultérieurement.
Recommended Posts