C# fournit deux technologies pour obtenir un polymorphisme statique -
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 -
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)); } }
Multiplication of two numbers: 150 Multiplication of three numbers: 2080 Multiplication of four numbers: 1470
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 -
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. |
=, ., ?:, -Ces opérateurs 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!