注册 登录

清河洛

C#中的方法

qingheluo2021-08-31清河洛826
一个方法是把一些相关的语句组织在一起,用来执行一个任务的语句块。每一个C#程序至少有一个带有Main方法的类C#中定义方法当定义一个方法时,从根本上说是在声明它的结构的元素: (Parameter List) { Method Body } Access Specifier:表示访问修饰符 Return Type :表示方法的返回类型,如果不返回任何值,则返回类型为void Method Name :表示方法名称,是一个唯一的标识符,且是大小写敏感的 Parameter list :参数列表,包含参数类型、顺序和数量 Method body :方法主体...

一个方法是把一些相关的语句组织在一起,用来执行一个任务的语句块。

每一个C#程序至少有一个带有Main方法的类

C#中定义方法

当定义一个方法时,从根本上说是在声明它的结构的元素:

  (Parameter List)
{
   Method Body
}

Access Specifier:表示访问修饰符
Return Type     :表示方法的返回类型,如果不返回任何值,则返回类型为void
Method Name     :表示方法名称,是一个唯一的标识符,且是大小写敏感的
Parameter list  :参数列表,包含参数类型、顺序和数量
Method body     :方法主体,包含了完成任务所需的指令集

C#中调用方法

一般情况下,方法必须是由实例对象调用,也就是说想要调用对象,要先实例化包含该方法的类,然后使用点操作符(.)进行调用

无需使用实例对象调用方法的情况:

1、递归调用,直接使用方法名调用即可。
2、静态方法。

C#中方法的参数传递

一、按值传递参数

这是参数传递的默认方式,当调用一个方法时,会为每个值参数创建一个新的存储位置。

实际参数的值会复制给形参,实参和形参使用的是两个不同内存中的值。所以,当形参的值发生改变时,不会影响实参的值,从而保证了实参数据的安全。

二、按引用传递参数

引用参数是一个对变量的内存位置的引用。

当按引用传递参数时,形参与实参具有相同的内存位置

在C#中,使用ref关键字声明引用参数

调用的时候也要使用ref关键字,调用时参数必须为变量且已经赋值。

public void swap(ref int x, ref int y){
    int temp;
    temp = x;
    x = y;
    y = temp;
    //交换x,y的值
}

如实例化的对象为demo,则使用demo.swap(ref a , ref b)来调用

三、按输出传递参数

基本上和引用传递参数功能和用法相同,唯一不同的是调用时参数无需赋值

在C#中,使用out关键字声明输出参数,调用的时候也要使用out关键字

不固定参数

参数数组通常用于传递未知数量的参数给函数

在使用数组作为形参时,C#提供了params关键字,使调用数组为形参的方法时,既可以传递数组实参,也可以传递一组数组元素

public int AddElements(params int[] arr){
    int sum = 0;
    foreach (int i in arr)
    {
        sum += i;
    }
    Console.WriteLine("总和是: {0}", sum);
}

调用时不必考虑传入参数的个数


网址导航