变量的作用域:
在方法中定义的变量称为局部变量,其作用域从定义开始,到其所在的大括号{}结束为止
当被调用者想得到调用者方法中的变量时,则可以让调用者通过参数的形式给被调用者
在方法后面括号内定义的变量,叫做定义这个方法的参数。这里定义的变量用于接收调用者传过来的数据
需要注意的是:如果一个方法一旦有参数,那么调用者就必须传参数,并且传参数的个数与对应位置上的类型必须一致,定义几个参数,在调用时就要传几个参数,并且类型必须相对应保持一致
当调用者想访问我们方法中的变量时,可以通过返回值返回
例如:
String s=console.readLine();
为什么方法前面能够定义一个变量收到方法的值呢,是因为在方法中使用了返回值
只要在方法中返回了值,那么在调用方法中,前面就应该用一个变量来接收方法的返回值
需要注意的是:一个方法只能有一个返回值
一旦一个方法有返回值,那么在这个方法体中,就必须通过return语句返回一个值,并且这个值与返回值类型是相同的
return 值
一个变量一旦定义在方法外面类的里面,就叫做类的字段,这个变量就可以被本类的所有方法所访问,但是要注意,静态方法只能访问静态字段
由const修饰的常量不能定义静态的
方法重载:
一般在同一个类中,方法名相同并且方法的参数的个数不同,或者对应位置上的参数类型不同,才能构成方法重载
方法重载和返回值没有关系
通过参数来返值:
如上代码:
实现步骤:
1,在方法的参数类型前加out,那么传参数的时候,也必须要在number前加out表明这个参数不是传入的,而是用来传出值的
2,如果参数是以out形式传入的,那么在传入前可以不赋初值(如上述代码:number)
3,在方法中对于由out修饰的参数,必须赋值,并且必须在使用前赋值(如上述代码中的a)
要记得给result赋值,因为如果转换不成功时,就跳入catch中,在catch在不对result赋值就会出错,在方法中对于由out修饰的参数,必须赋值,并且必须在使用前赋值
Out用于传出值,在方法中必须对out修饰的参数进行赋值
ref 可以理解成是双向的,即可以传入,又可以传出
在传参的过程中,如参数有out或ref修饰的话,那么改变方法中参数变量的值,调用者方法中变量的值也会相应改变
|