09黑马程序员_方法,参数,返回值

来源:互联网 发布:数据库的三种数据模型 编辑:程序博客网 时间:2024/06/06 02:45

------- Windows Phone 7手机开发.Net培训、期待与您交流! -------

方法

(函数)

功能:

用来复用代码的.当我们在一个程中反复的写了相同的代码.那一般情况下,我们可以把需要重复写的代码定义在一个方法中.用的时候只需要调用就行了.


定义方法的语法:

B

[访问修饰符][static] 返回值类型  方法名()

{

方法体

}

注意:1)方法一般定义在类中

2)如果方法没哟返回值.则返回类型写void

3)如果方法没有参数,()不能省略

其他注意

命名规则:方法名开头大写,参数名开头小写,参数名,变量名要有意义.

方法的调用:如果是静态方法(static修饰的)则使用.

return可以立即退出方法.

类名.方法名();

在类中调用本调的方法,可以只写方法名();

(网上查了下常用方法,有好多)

.NET Reflector (.NET反编译工具)源代码查询

变量的作用域

在方法中定义的遍历了称为局部变量,其作用域从定义开始,到其所在的大括号结束为止

当被调用者想要得到调用者方法中的变量时,则可以让调用者通过参数的形式给被调用者

[访问修饰符][static] 返回值类型  方法名([参数])

{

方法体

}

如:
public static void Test(int number)
{}
在方法名后面的括号内定义变量,叫做定义这个方法的参数.
这里定义的变量用于接收调用者穿过来的数据.
注意:如果一个方法一旦有参数,那么调用者就必须传参数,且传参数的个数与对应位置上的类型必须一致.

返回值

当调用者想访问我们方法中的变量时,可以通过返回值返回

例如:

            string s = Console.WriteLine();

            int i=Convert.ToInt32("22")

为什么方法前面能够定义一个变量收到方法的值,是因为在方面中使用了返回值.

只要在方法中返回了值,那么在调用方法中,前面就应该用一个变量来接受方法的返回值.

namespace fanhui{    class Program    {        static void Main(string[] args)        {            int a = int.Parse(Console.ReadLine());            int b = int.Parse(Console.ReadLine());            int sum = Add(a, b);            Console.WriteLine("平均值为{0}", + sum / 2);            Console.ReadKey();        }        public static int Add(int a, int b)        { return a + b; }    } }

注意:一个方法只能有一个返回值.

一旦一个方法有返回值,那注在这个方法值中,就必须通过return语句返回一个值,并且这个值要与返回值类型是相同的.

语法:return 值;

练习

平年闰年的判断

namespace runnian{    class Program    {        static void Main(string[] args)        {            int year = Convert.ToInt32(Console.ReadLine());            bool result = LeapYear(year);            if (result)            { Console.WriteLine("闰年"); }            else            { Console.WriteLine("平年"); }            Console.ReadKey();        }        public static bool LeapYear(int year)        {         if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0)        { return true; }        else        { return false; }        }    }}

一个变量一旦定义在方法外,类的里面.就叫做类的字段.这个变量就可以被本类的所有方法所访问.当要注意,静态方法只能访问静态字段.

由const修饰的常量不能定义静态的


什么叫方法重载

一般在同一个类中,方法名相同,并且方法的参数的个数不同或者对应位置上的类型不同,才能构成方法的重载

注意:

方法重载和返回值没有关系.


方法的out参数和ref参数

通过参数来返值:


如上:

步骤:

1)在方法的参数类型前加out,那么传参数的时候也必须在number前加out表明这个参数不是传入,而是用来传出值的

2)如果参数时以out形式传入的,那么在传入前可以不赋初值.

3)在方法中对于由out修饰的参数,必须赋值,并且必须在使用前赋值.


out用于传出值,大方法中必须对out修饰的传数进行赋值

ref可以理解成是双向的,既可以传入,又可以传出.

在传参数的过程中,如果参数有out或ref修饰的话,那么改变方法中的参数变量的值,调用者方法中变量的值也会相互改变.



------- Windows Phone 7手机开发.Net培训、期待与您交流! -------

原创粉丝点击