Maison  >  Article  >  développement back-end  >  Qu’est-ce que la surcharge en C# ?

Qu’est-ce que la surcharge en C# ?

WBOY
WBOYavant
2023-09-06 22:17:02784parcourir

Qu’est-ce que la surcharge en C# ?

C# fournit deux technologies pour obtenir un polymorphisme statique -

  • Surcharge de fonctions
  • Surcharge d'opérateur

Surcharge de fonctions

Deux méthodes ou plus avec le même nom mais des paramètres différents sont des surcharges de fonctions en C#.

La surcharge de fonctions en C# peut être implémentée en modifiant le nombre de paramètres et le type de données des paramètres.

Supposons que vous ayez une fonction qui imprime la multiplication des nombres, alors nos méthodes surchargées auront le même nom mais un nombre d'arguments différent -

public static int mulDisplay(int one, int two) { }
public static int mulDisplay(int one, int two, int three) { }
public static int mulDisplay(int one, int two, int three, int four) { }

L'exemple suivant montre comment implémenter la surcharge de fonctions -

Exemple

Démonstration en direct

using System;
public class Demo {
   public static int mulDisplay(int one, int two) {
      return one * two;
   }

   public static int mulDisplay(int one, int two, int three) {
      return one * two * three;
   }
   
   public static int mulDisplay(int one, int two, int three, int four) {
      return one * two * three * four;
   }
}

public class Program {
   public static void Main() {
      Console.WriteLine("Multiplication of two numbers: "+Demo.mulDisplay(10, 15));
      Console.WriteLine("Multiplication of three numbers: "+Demo.mulDisplay(8, 13, 20));
      Console.WriteLine("Multiplication of four numbers: "+Demo.mulDisplay(3, 7, 10, 7));
   }
}

Output

Multiplication of two numbers: 150
Multiplication of three numbers: 2080
Multiplication of four numbers: 1470

Surcharge d'opérateur

Un opérateur surchargé est une fonction avec un nom spécial, le mot-clé opérateur suivi du symbole de l'opérateur en cours de définition.

Ci-dessous montre quels opérateurs peuvent être surchargés et quels opérateurs ne peuvent pas être surchargés -

6=, ., ?:, -Ces opérateurs ne peuvent pas être surchargés

Sr.No opérateurs et description
1 +, - , ~, ++, --

Ces opérateurs unaires prennent un opérande et peuvent être surchargés.

2 +, -, *, /, %

Ces opérateurs binaires prennent un opérande et peuvent être surchargés. Les opérateurs de comparaison peuvent être surchargés. Les opérateurs logiques conditionnels ne peuvent pas être surchargés directement.

5 +=, -=, *=, /=, %=Les opérateurs d'affectation ne peuvent pas être surchargés.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer