Qu'est-ce que la surcharge de méthode en C #?

Lorsque vous souhaitez implémenter la fonctionnalité de polymorphisme, cela se fait à l'aide de la surcharge de méthode. En termes simples, si nous voulons utiliser une fonction pour plusieurs formulaires, nous utilisons la surcharge de méthode. Étant donné que C # est un langage basé sur les POO, il prend complètement en charge le polymorphisme.

Un programmeur peut utiliser une classe plusieurs fois avec le même nom avec des paramètres différents. Lors de l'utilisation du polymorphisme, deux classes ou méthodes peuvent utiliser le même nom.

Parlons des différentes méthodes d'utilisation des paramètres dans les classes et méthodes de c #.

  1. Nous pouvons surcharger la méthode en fonction de plusieurs paramètres passés. Dans les méthodes, les paramètres doivent être passés comme arguments.
  2. Deux méthodes ne peuvent pas être définies avec le même nom avec le même type et ordre des paramètres passés. Cela vous donnerait une erreur.
  3. Bien que le type de retour ne soit pas pris en compte par le compilateur, deux méthodes ne peuvent pas être déclarées avec le même nom, type ou signature.

Quelle est l'utilisation de la surcharge de méthode?

Lorsque vous ne souhaitez pas déclarer plusieurs méthodes pour un type de méthode similaire pour des tâches similaires à effectuer et que vous souhaitez utiliser la même méthode de différentes manières. Par exemple, différentes entrées, ordre différent, nombre différent d'entrées pour les mêmes méthodes, vous devez utiliser la surcharge de méthode.

Prenons un exemple concret. Nous codons pour une calculatrice où vous êtes fourni pour coder la partie somme de la calculatrice. Tous les nombres entrés par l'utilisateur doivent être ajoutés les uns aux autres et renvoyer la somme de tous les nombres entrés.

Il y a une restriction. Les utilisateurs ne peuvent pas ajouter plus de trois numéros en une seule fois.

Voici les étapes pour le faire facilement:

  1. Déclarez une méthode qui devrait additionner tous les nombres passés en paramètres
  2. La surcharge de méthode serait effectuée par le nombre de paramètres transmis.
  3. La méthode doit renvoyer la somme de tous les nombres entrés.

Syntaxe

Voici la syntaxe de la surcharge de méthode.

//declare the parameters in method
public void method1 (parameter1, parameter2)
(
//some statement
)
public void method1(parameter2, parameter1)
(
//some statement to be executed
)
//in main method pass the parameters while declaring these methods
public static void Main(Strings() args)
(
class object=new class();
object.method(2, 3) //value of parameter
object.method(3, 2) //value of parameter by changing the order
)
)

Exemples de surcharge de méthode

La surcharge de méthode en C # peut être effectuée en modifiant les éléments ci-dessous.

  1. Vous pouvez changer le nombre de paramètres passés dans la méthode
  2. Vous pouvez changer le type de paramètres passés dans la méthode
  3. Vous pouvez modifier l'ordre des paramètres passés dans la méthode.

Si le même type de signature et de paramètres sont transmis dans la même méthode, cela vous donnera une erreur de compilation. La signature doit être différente si vous utilisez la fonction de polymorphisme ou si vous essayez de surcharger une méthode en C #

Prenons un exemple de chacun.

1. Modification du nombre de paramètres

using System;
public class methodOverloadfirst
(
//declaring two integers x and y.
public int sum(int x, int y)
(
int result=x+y;
return result;
)
//Let's add three integers in same method
public int sum(int x, int y, int z)
(
int result=x+y+z;
return result;
)
//Declare main method
public static void Main(String() args)
(
methodOverloadfirst obj=new methodOverloadfirst();
int result1=obj.sum(2, 3);
Console.WriteLine("The Sum of the two integer value is : " + result1);
int result2=obj.sum(2, 3, 4);
Console.WriteLine("The Sum of the three integer value is : " + result2);
)
)

Production:

2. Modification des types de données des paramètres

// Notre programme pour montrer la fonction de surcharge de méthode
// Nous allons changer ici le type de données des paramètres.

using System;
public class methodOverloadfirst
(
//declaring two integers x and y.
public int sum(int x, int y)
(
int result=x+y;
return result;
)
//Let's add three doubles in same method
public double sum(double x, double y, double z)
(
double result=x+y+z;
return result;
)
//Declare main method
public static void Main(String() args)
(
methodOverloadfirst obj=new methodOverloadfirst();
int result1=obj.sum(2, 3);
Console.WriteLine("The Sum of the two integer value is : " + result1);
double result2=obj.sum(2.1, 3.2, 4.5);
Console.WriteLine("The Sum of the three double value is : " + result2);
)
)

Production:

3. Modification des types de données des paramètres.

// Notre programme pour montrer la fonction de surcharge de méthode
// Nous allons changer ici le type de données des paramètres.

using System;
class methodOverloadfirst
(
//declaring one integer and one String
public void displayinfo(string fname, int empID)(
Console.WriteLine("Your name is: " + fname + ", " + "Your Employee ID is: " + empID);
)
//Let's change the order of the parameters
public void displayinfo(int empID, string fname)
(
Console.WriteLine("Your Employee ID is: " + empID + ", " + "Your name is: " + fname);
)
//Declare main method
public static void Main(String() args)
(
methodOverloadfirst obj=new methodOverloadfirst();
obj.displayinfo("Kumar", 121);
obj.displayinfo("Anand", 123);
)
)

Production:

Conclusion

La surcharge de méthode est une fonctionnalité étonnante du concept basé sur les POO et pourrait vous éviter beaucoup de tracas si vous êtes programmeur. La surcharge de méthode est l'une des caractéristiques du polymorphisme. S'il est utilisé correctement, il pourrait vous empêcher de déclarer plus d'une méthode et de la déclarer à chaque fois pour une tâche similaire.

Lors de l'utilisation de cette fonctionnalité est le type de signature. Cela devrait être différent à chaque fois que la méthode est utilisée soit par plusieurs paramètres et par ordre de paramètres ou par type de paramètres comme indiqué ci-dessus dans les exemples.

Articles recommandés

Ceci est un guide de surcharge de méthode en C #. Ici, nous discutons de l'utilisation de la surcharge de méthode avec les exemples et les sorties. Vous pouvez également consulter l'article suivant pour en savoir plus-

  1. Destructeur en C #
  2. Surcharge en C #
  3. Compilateurs C #
  4. Opérateur C # OR
  5. Polymorphisme en Java
  6. Surcharge en Java
  7. Types de données C ++
  8. Surcharge Python
  9. Surcharge et remplacement en C #
  10. Destructeur en PHP | Exemples