C#中的重载是什么?
C# 提供两种实现静态多态性的技术:
- 函数重载
- 运算符重载
函数重载
在 C# 中,两个或多个具有相同名称但参数不同的方法称为函数重载。
C# 中的函数重载可以通过更改参数的数量和参数的数据类型来实现。
假设您有一个打印数字乘积的函数,那么我们的重载方法将具有相同的名称,但参数数量不同:
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) { }以下示例演示如何实现函数重载:
示例
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
运算符重载
重载的运算符是具有特殊名称的函数,关键字 `operator` 后跟被定义的运算符的符号。
以下是可以重载和不能重载的运算符:
| 序号 | 运算符和描述 |
|---|---|
| 1 | +, -, !, ~, ++, -- 这些一元运算符接受一个操作数,可以重载。 |
| 2 | +, -, *, /, % 这些二元运算符接受一个操作数,可以重载。 |
| 3 | ==, !=, <, >, <=, >= 比较运算符可以重载。 |
| 4 | &&, || 条件逻辑运算符不能直接重载。 |
| 5 | +=, -=, *=, /=, %= 赋值运算符不能重载。 |
| 6 | =, ., ?:, -<, new, is, sizeof, typeof 这些运算符不能重载 |
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP