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 这些运算符不能重载 |
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP