Introduction au polymorphisme

Le polymorphisme est le concept à l'aide duquel une seule action de différentes manières peut être effectuée. Il est dérivé de deux mots grecs, c'est-à-dire poly et morphes. «Poly» signifie plusieurs et «morphes» signifie formes. Désormais, le polymorphisme implique de nombreuses formes. En programmation orientée objet, il peut être défini comme la capacité d'un langage de programmation à traiter des objets différemment selon leur classe ou leur type de données. Fondamentalement, nous pouvons le définir comme la capacité des classes dérivées à redéfinir les méthodes.

Compréhension

Les deux types de polymorphisme sont le polymorphisme à la compilation et le polymorphisme à l'exécution. Le polymorphisme au moment de la compilation est effectué par surcharge de méthode et le polymorphisme d'exécution par redéfinition de méthode. Le polymorphisme d'exécution également appelé Dynamic Method Dispatch est un processus dans lequel l'appel à une méthode redéfinie est résolu au moment de l'exécution malgré au moment de la compilation. Ici, la méthode substituée est appelée via une variable de référence d'une classe parent. En outre, le polymorphisme d'exécution ne peut pas être atteint par les membres de données.

Comment le polymorphisme facilite-t-il le travail?

Il s'agit d'une caractéristique de programmation orientée objet. En utilisant le polymorphisme, une classe peut présenter différentes fonctionnalités même lorsqu'elles ont une interface commune. Ainsi, nous pouvons dire que ce long terme explique un concept de base. La chose remarquable à propos du polymorphisme est que tout le code de travail dans diverses classes n'a pas besoin de connaître la classe utilisée par lui car son mode d'utilisation est le même.

Il s'agit d'une caractéristique de programmation orientée objet. En utilisant le polymorphisme, une classe peut présenter différentes fonctionnalités même lorsqu'elles ont une interface commune. Ainsi, nous pouvons dire que ce long terme explique un concept très basique. La chose remarquable à propos du polymorphisme est que tout le code de travail dans diverses classes n'a pas besoin de connaître la classe utilisée par lui car son mode d'utilisation est le même.

Considérons un scénario du polymorphisme dans le monde réel. Prenons un exemple de bouton. Nous savons qu'en appliquant une certaine pression, nous pouvons cliquer sur le bouton, mais nous ne connaissons pas le résultat de la pression sur le bouton ni la référence de son utilisation. Le point ici à noter est, de toute façon, le résultat n'affectera pas la façon dont il est utilisé.

L'objectif fondamental du polymorphisme est donc de fabriquer des objets interchangeables en fonction des besoins.

Que pouvez-vous faire avec le polymorphisme?

Lorsque la classe enfant a la même méthode que celle déclarée dans la classe parent, nous l'appelons une méthode prioritaire.

Ou en d'autres termes, si une classe enfant fournit l'implémentation de la méthode qui a été déclarée par sa classe parent, elle est appelée substitution de méthode. Certaines choses à retenir dans la substitution de méthode sont:

  • La méthode doit avoir le même nom que celui mentionné dans la classe parente
  • La méthode doit également avoir le même paramètre que celui mentionné dans la classe parent.
  • Il doit y avoir l'héritage, c'est-à-dire la relation IS-A.

Travailler avec le polymorphisme?

Lorsqu'une classe a plusieurs méthodes qui ont le même nom mais des paramètres différents, on parle de surcharge de méthode.

Supposons que nous ne devions effectuer qu'une seule opération, puis avoir le même nom que les méthodes augmenterait la lisibilité du programme. Les moyens de surcharger la méthode en Java sont les suivants:

  • Modification du nombre d'arguments
  • Modification du type de données

Cependant, en Java, ce n'est pas possible si nous modifions uniquement le type de retour de la méthode.

Les avantages

  • Le polymorphisme aide les programmeurs à réutiliser le code ainsi que les classes qui ont été écrites pour être testées et implémentées. (Réutilisation du code)
  • Un nom de variable unique peut stocker des variables de plusieurs types de données (int, float, double, long, etc.).
  • Augmente la lisibilité du programme.

Pourquoi utiliser le polymorphisme?

Outre le polymorphisme dynamique et le polymorphisme statique, certaines caractéristiques de programmation Java présentent un polymorphisme autre que les deux types principaux.

Ce sont: la contrainte, les paramètres polymorphes et la surcharge de l'opérateur

Coercition

Comprenons la coercition avec un exemple très simple. Considérons une chaîne avec la valeur "classe de coercition:". Considérons un autre entier avec la valeur 1. Maintenant, que se passe-t-il lorsque vous concattez une valeur de chaîne avec une valeur entière? Le résultat de cette concaténation serait "classe de coercition: 1". C'est ce qu'on appelle la coercition. La conversion de type implicite est effectuée pour éviter les erreurs de type. C'est fait par le compilateur.

Surcharge de l'opérateur

Avant de commencer par la surcharge de l'opérateur, également connue sous le nom de surcharge de méthode, examinons un exemple. Considérez une chaîne avec la valeur «Operator» et une autre chaîne comme «Overloading». Utilisez le symbole plus (+) avec ces deux chaînes, tout comme vous ajoutez deux entiers. Le (+) concatène ces deux chaînes. Dans le cas de deux entiers, la somme de deux entiers est retournée. Lorsqu'un symbole ou un opérateur a la capacité de changer leur signification en fonction de la façon dont ils sont utilisés, le type de polymorphisme présenté est appelé surcharge de l'opérateur.

Paramètres

Dans le polymorphisme, un objet peut apparaître sous plusieurs formes. En Java, il s'agit d'autoriser l'accès à un objet de l'une des manières suivantes, comme -

1. en utilisant la variable de référence de sa classe parent ou superclasse

2. en utilisant la variable de référence de la classe dans laquelle elle existe.

Pourquoi avons-nous besoin du polymorphisme?

La principale raison pour laquelle le polymorphisme est nécessaire est que ce concept est largement utilisé dans la mise en œuvre de l'héritage. Il joue un rôle important en permettant aux objets d'avoir des structures internes variées en partageant la même interface externe. Le polymorphisme est clairement défini comme celui qui est cartographié pour beaucoup.

Portée

La liaison consiste à connecter un appel de méthode au corps de la méthode. Nous avons deux types de reliure.

Liaison statique (liaison anticipée): lorsque le type d'objet est déterminé au moment de la compilation.

Liaison dynamique (liaison tardive): lorsque le type d'objet est déterminé au moment de l'exécution.

Conclusion

Le polymorphisme est donc considéré comme l'une des caractéristiques très importantes de la programmation orientée objet. Si vous parlez d'un exemple concret de polymorphisme, cela pourrait être qu'une personne en même temps peut avoir des caractéristiques différentes, par exemple, un homme en même temps est un fils, un mari, un employé. Ainsi, la même personne acquiert un comportement différent dans différentes situations. Ceci, en termes orientés objet, est appelé polymorphisme, une caractéristique importante de la programmation orientée objet.

Articles recommandés

Cela a été un guide pour Qu'est-ce que le polymorphisme?. Ici, nous avons discuté du fonctionnement, de la portée, du besoin et des avantages du polymorphisme. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -

  1. Qu'est-ce que JavaScript?
  2. Qu'est-ce que le HTML
  3. Qu'est-ce que Python
  4. Polymorphisme en C #
  5. Tableaux en programmation Java
  6. Conversion de types en Java avec types et exemples
  7. Guide de conversion en Java avec des exemples
  8. Liaison statique et liaison dynamique | Présentation | Les usages