📜  方法 c# (1)

📅  最后修改于: 2023-12-03 14:55:04.833000             🧑  作者: Mango

C# 中的方法

在 C# 中,方法是一个代码块,用于执行特定的任务。 方法通常接受参数,执行代码,可能返回结果。

声明方法

方法由一些关键字和代码块组成。方法的声明中必须指定返回类型,方法名称和参数列表。

[访问修饰符] [修饰符] 返回类型 方法名称([参数列表]) 
{
    // 方法体
}
  • 访问修饰符 表示谁可以访问该方法。常见的有 publicprivateprotectedinternal
  • 修饰符 表示特殊的行为,如 static 表示让方法属于类而不是实例,virtual 表示方法可以被重写等等。
  • 返回类型 指定方法返回的值的类型。如果方法没有返回值,则返回类型为 void
  • 方法名称 是用于唯一标识该方法的名称。
  • 参数列表 是方法接收的参数。

例如:

public int Sum(int x, int y) 
{
    return x + y;
}

这个方法叫做 Sum,它使用了访问修饰符 public,返回类型为 int,接受两个参数 xy,它们都是 int 类型。 方法体返回了 xy 相加的结果。

方法参数

方法可接收的参数可以为值类型、引用类型、对象、数组等。参数可以是必需的或可选的,在调用方法时必传或可不传。

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 的方法,并声明了两个参数 xy 作为输出参数。

在方法体内,我们给x和y赋了值。

x = 1;
y = 2;

当该方法被调用时,传递输出参数的变量必须在方法调用之前使用关键字 out 进行声明。

int a, b;
GetValues(out a, out b);
总结

在 C# 中,方法可以接受零个或多个参数,并可以返回零个或者一个值。方法可以是必需的或可选的,可以彼此重载,还可以返回输出参数。熟悉 C# 中的各种方法是成为一个成功的 C# 程序员的关键。