当前位置:文档之家› 调用类的方法

调用类的方法

语法如下:
语法
[访问修饰符] 返回值的类型方法名([参数列表]){
//方法体
}
(1)访问修饰符
已经讲述过类的访问修饰符,其实同理,这里的方法的访问修饰符功能也是一样,public 表示公共的,private 表示私有的。

在程序中,如果将变量或者方法声明为public,就表示其他类可以访问,如果声明为private,
(2)方法的返回类型。

方法是供别人调用的,调用后可以返回一个值,这个返回值的数据类型就是方法的返回类型,可以是int、float、double、bool、string 等。

如果方法不返回任何值,就使用void。

语法
return 表达式;
如果方法没有返回值,则返回类型应该使用void(空虚;空的),用于说明无返回值。

如:public void Singing() //无返回值
{
Console.Write(“在唱歌。

”);
}
return 语句做两件事情:表示已经完成,现在要离开这个方法;如果方法产生一个值,这个值放置在return 后面,即<表达式>部分。

意思就是“离开该方法,并且将<表达式>的值返回给调用其的程序”。

注意:在编写程序的时候,一定要注意方法声明中返回值的类型和方法体中真正的返
回的值的类型是否匹配,如果不匹配,后果很严重。

比如在下面这个ToString()方法中,返
回类型是String 类型,因此在方法体中必须用return 返回一个字符串,否则编译器将报错。

(3)方法名
定义一个方法都要有一个名称
注意:方法名主要用于调用这个方法时用,命名方法就像命名变量、类一样,要遵守一定的规则,如必须以字母、下划线“_”或“$”开头,绝对不能以数字开头。

(4)参数列表
方法中可以传递参数,这些参数就组成参数列表,如果没有参数就不用参数列表。

参数列表中的每个参数都是“类型参数名”的形式,各个参数之间用逗号分开。

(5)方法的主体
方法的主体部分就是这个方法做一件事情要执行的代码了。

在编写自己的方法时,应该先写明方法的声明,包括访问修饰符、返回类型、方法名、参数列表,然后再写方法的主体。

静态和非静态的方法
使用static 类型修饰符的方法称为静态方法,静态方法和非静态方法的区别是:
静态方法属于类所有,不需要创建对象,直接用类名加“.”操作符加方法名即可调用。

非静态方法属于用该类定义的对象所有,都需要使用“new”关键字创建一个类对象,才能够调用相应的方法啊
参数的传递
class ExchangeNumber
{
public static void Swap(int num1, int num2) {
int temp; //中间变量
temp = num1;
num1 = num2;
num2 = temp;
}
}
static void Main(string[] args)
{
int num1 = 5, num2 = 10; //定义两个数
Console.WriteLine("交换前\n number1:" + num1 + "\t number2:" + num2);
ExchangeNumber.Swap(num1, num2); //交换两个数
Console.WriteLine("交换后\n number1:" + num1 + "\t number2:" + num2);
}
在使用带参数的方法时,还会接触到以下概念。

形参:全称为形式参数,是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传如的参数。

实参:全称为实际参数,是在调用时传递该函数的参数。

来采用值传递方式进行传递时,编译器首先将实参的值做一份拷贝,并且将此拷贝传递给被调用方法的形参。

可以看出这种传递方式传递的仅仅是变量值的一份拷贝,或是为形参赋予一个值,而对实参并没有做任何的改变,同时在方法内对形参值的改变所影响的仅仅是形参,并不会对定义在方法外部的实参起任何作用。

要想使参数按照引用传递,需要使用ref 关键字修饰参数。

public static void Swap(ref int num1,ref int num2) //注意使用了ref 关键字
{
int temp; //中间变量
temp = num1;
num1 = num2;
num2 = temp;
}
方法的重载
具有相同的方法名,只是其使用的参数个数或是参数类型不同,编译器变能够根据实参的不同确定在哪种情况下调用哪个方法,这就构成了方法的重载。

方法的重载方式主要有两种:
1、参数个数不同的重载
2、参数是不同类型的重载
注意:在方法的重载中,不允许仅仅返回值类型不同的方法的重载
练习
编写程序求3个数最大值与最小值,并输出。

要求:
1、定义一个类A ,含求最大值与最小值方法
2、最小值方法为静态方法。

相关主题