一.方法
2.方法的定义及使用
3.方法的定义格式
在Java中,声明一个方法的具体语法格式如下:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,......){
执行语句
………
return 返回值;
}
对于上面的语法格式中具体说明如下:
3.1 修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等,这些修饰符在后面的学习过程中会逐步介绍。目前使用固定的public static修饰符
3.2 返回值类型:方法返回值的数据类型
3.3 参数类型:调用方法时传入参数的数据类型
3.4 参数名:是一个变量,用于接收调用方法时传入的数据
3.5 return关键字:用于结束方法以及返回返回值
3.6 返回值:被return语句返回的值,该值会返回给调用者
4.方法的使用格式
所有的方法定义出来,都是为了让别的方法使用的。永远不被别人调用的方法,其定义是没有意义的。
使用格式
在前边说的引用数据类型的简单使用时,我们已经使用过方法
使用格式即:对象名.方法名(对应参数)
当一个类中有多个方法,多个方法之间可以相互直接调用,无需创建对象
使用格式:方法名(参数);
注意
方法必须先定义再使用
方法的定义顺序跟调用无关
5.定义格式注意事项
a) 返回值类型
可以返回任意类型,包含基本数据类型与引用数据数据类型
如果没有返回值,则使用void
b) return
结束方法的同时如果定义的返回值类型不是void,则同时将结果返回给调用者。
当返回值类型为void时,return后可以不跟返回值
当返回值类型为void时,可以省略,Java会自动补齐
c) 返回值
该方法运算的数值结果,该结果会通过return返回给调用者
有时结果运行后没有返回值。(买东西与买服务)
返回值的数据类型一定要与返回值类型统一
d) 方法名
方法的名称,区分不同方法的依据之一
定义符合小驼峰式 wordWordWord
e) 形式参数
是形式参数的数据类型,在定义时没有赋值,在方法使用时一定有值,所以可以使用该变量完成逻辑
是一个变量,用于存储调用方法时传递给方法的实际数值
6. 多个方法可以共同访问成员变量
当一个类中定义了多个方法时,在方法A中定义的局部变量无法在方法B中直接访问。此时可以将变量定义在成员位置(类中方法外),供多个方法同时访问。
使用static修饰的方法只能访问被static修饰的成员变量。
7. 方法重载
在同一个类中,不能出现两个完全一样的方法。但是如果有多个功能,而这些功能大致相同只是某些已知量不同时,可以将两个方法的名称定义成相同的,而参数不同。这些相同名称不同参数的方法之间是重载关系。
8. 方法重载定义
在同一个类中,出现方法名相同而参数列表不同,这样定义方法叫做方法重载。
这样的设计优化了程序设计
如:求3个数,4个数的和
方法定义:与求两数逻辑类似,求3、4个数和的方法中中只有参数不同。方法名与求两数的方法名相同,三个方法互为重载关系
public static int add(int a,int b) {逻辑} //两个数加法
public static int add(int a,int b,int c){逻辑} //三个数加法
public static int add(int a,int b,int c,intd) {逻辑} //四个数加法
方法使用:main方法中直接调用
9. 重载的注意事项
a) 重载方法参数必须不同:
参数个数不同,如method(int x)与method(intx,int y)不同
参数类型不同,如method(int x)与method(doublex)不同g
参数顺序不同,如method(int x,double y)与method(doublex,int y)不同
b) 重载只与方法名与参数类型相关与返回值无关
如void method(int x)与int method(inty)不是方法重载,不能同时存在
c) 重载与具体的变量标识符无关
如method(int x)与method(int y)不是方法重载,不能同时存在
以下为switch语句的格式:
switch (表达式){
case 目标值1:
执行语句1
break;
case 目标值2:
执行语句2
break;
......
case 目标值n:
执行语句n
break;
default:
执行语句n+1
break;
}
在上面的格式中,switch语句将表达式的值与每个case中的目标值进行匹配,如果找到了匹配的值,会执行对应case后的语句,如果没找到任何匹配的值,就会执行default后的语句。break的作用是跳出switch语句。