📅  最后修改于: 2023-12-03 14:55:04.833000             🧑  作者: Mango
在 C# 中,方法是一个代码块,用于执行特定的任务。 方法通常接受参数,执行代码,可能返回结果。
方法由一些关键字和代码块组成。方法的声明中必须指定返回类型,方法名称和参数列表。
[访问修饰符] [修饰符] 返回类型 方法名称([参数列表])
{
// 方法体
}
访问修饰符
表示谁可以访问该方法。常见的有 public
、 private
,protected
和internal
。修饰符
表示特殊的行为,如 static
表示让方法属于类而不是实例,virtual
表示方法可以被重写等等。返回类型
指定方法返回的值的类型。如果方法没有返回值,则返回类型为 void
。方法名称
是用于唯一标识该方法的名称。参数列表
是方法接收的参数。例如:
public int Sum(int x, int y)
{
return x + y;
}
这个方法叫做 Sum
,它使用了访问修饰符 public
,返回类型为 int
,接受两个参数 x
和 y
,它们都是 int
类型。 方法体返回了 x
和 y
相加的结果。
方法可接收的参数可以为值类型、引用类型、对象、数组等。参数可以是必需的或可选的,在调用方法时必传或可不传。
1.必传参数
以下示例演示如何在 C# 中将方法参数设置为必填。
public void PrintName(string name)
{
Console.WriteLine("Hello " + name);
}
在这个方法中, string name
参数是必需的,否则会报错。
2.可选参数
以下示例演示如何使 C# 方法参数变为可选参数。
public void PrintMessage(string message = "Hello, World!")
{
Console.WriteLine(message);
}
在这个方法中, string message
参数被设置为默认值 Hello, World!
。如果没有传递任何参数,则将显示默认值。
在 C#中,方法重载是指使用相同的名称定义多个方法,但参数类型,数量,顺序不同。方法重载使编写和调用代码更加方便。
以下示例演示如何在 C# 中重载方法。
public void Method(int x)
{
Console.WriteLine("Method with one parameter");
}
public void Method(string x)
{
Console.WriteLine("Method with string parameter");
}
public void Method(int x, string y)
{
Console.WriteLine("Method with two parameters");
}
在这个例子中,我们定义了三个名为 Method
的方法,每个方法有不同的参数类型和数量。
当调用方法 Method
时,编译器将根据传递给方法的参数类型和数量来确定使用哪个方法。
Method(1); // Method with one parameter
Method("Hello"); // Method with string parameter
Method(2, "World"); // Method with two parameters
在 C# 中,有时需要从方法中返回多个值。可以使用 out
关键字来定义输出参数。
以下示例演示如何在 C# 中定义输出参数。
public void GetValues(out int x, out int y)
{
x = 1;
y = 2;
}
int a, b;
GetValues(out a, out b);
Console.WriteLine(a); // 输出 1
Console.WriteLine(b); // 输出 2
在这个例子中,定义了一个名为 GetValues
的方法,并声明了两个参数 x
和 y
作为输出参数。
在方法体内,我们给x和y赋了值。
x = 1;
y = 2;
当该方法被调用时,传递输出参数的变量必须在方法调用之前使用关键字 out
进行声明。
int a, b;
GetValues(out a, out b);
在 C# 中,方法可以接受零个或多个参数,并可以返回零个或者一个值。方法可以是必需的或可选的,可以彼此重载,还可以返回输出参数。熟悉 C# 中的各种方法是成为一个成功的 C# 程序员的关键。