Différence entre surcharge et dépassement en Java

Différence clé - surcharge vs annulation en Java
 

La programmation orientée objet (OOP) est un paradigme majeur du développement logiciel. C'est une méthodologie pour concevoir un programme utilisant des classes et des objets. Une classe est un plan. Il décrit ce que doit contenir l'objet. Il définit les propriétés ou attributs et les méthodes dont l'objet doit être composé. Par conséquent, un objet est une instance d'une classe. Ces objets communiquent avec d'autres objets. Un concept majeur de la POO est le polymorphisme. C'est la capacité d'un objet à se comporter de plusieurs manières. Le polymorphisme est divisé en deux sections qui surchargent et dominent. Cet article explique la différence entre ces deux applications en Java. le différence clé entre surcharge et dépassement en Java est que le La surcharge est la possibilité de créer plusieurs méthodes du même nom avec des implémentations différentes. Overriding consiste à fournir une implémentation pour une méthode de sous-classe qui existe déjà dans la superclasse..

CONTENU

1. Vue d'ensemble et différence clé
2. Qu'est-ce que la surcharge en Java?
3. Qu'est-ce qui est prioritaire en Java?
4. Similitudes entre surcharge et surpassement en Java
5. Comparaison côte à côte - Surcharge vs dérogation en Java sous forme tabulaire
6. Résumé

Qu'est-ce que la surcharge en Java??

La surcharge est la possibilité de créer plusieurs méthodes du même nom avec différentes implémentations. Référez-vous au code Java ci-dessous.

Figure 01: programme Java expliquant la surcharge avec un nombre d'arguments différent

Selon le programme ci-dessus, la classe A contient deux méthodes portant le même nom. La première méthode de somme a deux paramètres. La seconde méthode de somme a trois paramètres. Lors de la création d'un objet de type A et de l'appel de sum (2,3), la méthode sum est appelée avec deux paramètres somme (int a, int b) et renvoie 5. Lors de la création d'un objet de type A et de l'appel sum (2 , 3,4), il appellera l’autre méthode de somme avec trois paramètres qui est la somme (int a, int b, int c) et renvoie 9.

Le nom de la méthode est identique mais le nombre de paramètres est différent. On peut observer que le même objet se comporte différemment. Ce concept est appelé surcharge. Il est également appelé Liaison statique ou Compile le polymorphisme du temps.

Il peut également être surchargé avec différents types de données. Référez-vous au code Java ci-dessous.

Figure 02: programme Java expliquant la surcharge avec un nombre d'arguments différent

Selon le programme ci-dessus, la classe A consiste en deux méthodes portant le même nom. La méthode sum (int a, int b) reçoit deux valeurs entières. La somme (double a double b) reçoit deux valeurs doubles. Lors de la création de l'objet de type A et de l'appel de sum (2,3), il appelle sum (int a, int b) et renvoie la valeur 5. Lors de l'appel de sum (3.4, 5.6), il appelle sum (double un double b) et retourne la valeur 9.0. Dans cet exemple, les méthodes ont le même nom, mais un type de variable différent. C'est aussi surcharger.

Qu'est-ce qui est prioritaire en Java??

En Java, il est possible de construire des sous-classes avec des classes déjà existantes. Plutôt que de créer la nouvelle classe depuis le début, il est possible d'utiliser les propriétés et les méthodes de la classe existante. La classe existante est la superclasse et la classe dérivée est la sous-classe. Lorsque la sous-classe fournit une implémentation pour une méthode, qui se trouve déjà dans la superclasse, on parle de substitution. Référez-vous au programme Java ci-dessous.

Figure 03: programme Java de neutralisation

Selon le programme ci-dessus, la classe A a un affichage de méthode (). La classe B s'étend de la classe A, de sorte que les propriétés et les méthodes de la classe A sont accessibles en classe B. La classe B a la méthode display () avec une implémentation spécifique. Lors de la création d'un objet de type, A et de l'appel de la méthode d'affichage, la sortie B sera générée. Même si la classe A a une méthode d'affichage, elle est remplacée par la méthode d'affichage de la classe B. La sous-classe implémente une méthode déjà existante dans la superclasse.

Ce concept est un type de polymorphisme et est appelé dominante. On l'appelle aussi comme Reliure tardive, Reliure dynamique, Polymorphisme à l'exécution.

Quelles sont les similitudes entre la surcharge et la substitution en Java?

  • Les deux sont des types de polymorphisme.
  • En surcharge et en surchargement, les méthodes ont le même nom.

Quelle est la différence entre la surcharge et la substitution en Java?

Surcharge vs dérogation en Java

La surcharge en Java permet de créer plusieurs méthodes du même nom avec des implémentations différentes.. Le remplacement en Java fournit une implémentation spécifique dans une méthode de sous-classe pour une méthode déjà existante dans la superclasse..
 Paramètres
En surcharge, les méthodes ont le même nom mais un nombre différent de paramètres ou un type de paramètres différent. En substitution, les méthodes ont le même nom et les paramètres doivent être les mêmes.
Des thèmes
La surcharge se produit dans la classe. La substitution se produit dans les deux classes ayant une relation d'héritage.
 Synonymes
La surcharge est appelée polymorphisme de temps compilé. La substitution est appelée polymorphisme à l'exécution.

Résumé - surcharge vs annulation en Java

Le polymorphisme est un concept majeur de la programmation orientée objet. Il permet à un objet de se comporter de plusieurs façons. Cela peut être une surcharge ou un dépassement. La surcharge est le polymorphisme au moment de la compilation et le polymorphisme à l'exécution est prioritaire. Ils sont utiles dans le développement d'applications logicielles. La différence entre la substitution et la surcharge réside dans le fait que la surcharge est la possibilité de créer plusieurs méthodes du même nom avec différentes implémentations et que Overriding fournit une implémentation spécifique dans la méthode de sous-classe pour une méthode déjà existante dans la superclasse. Il est possible d'implémenter à la fois la surcharge et la substitution en Java..

Téléchargez le PDF Overloading vs Overriding in Java

Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne, conformément à la note de citation. Veuillez télécharger la version PDF ici Différence entre surcharge et dépassement en Java

Référence:

1.tutorialspoint.com. "Annulation de Java." Le point. Disponible ici 
2. “Surcharge de méthode en Java - Javatpoint.” Disponible ici
3. “Méthode prioritaire en Java - javatpoint.” Disponible ici