方法
01.什么是方法?
方法(method)是程序中最小的执行单元
在实际开发中,重复的代码、具有独立功能的代码可以抽取到方法中 ; 这样可以提高代码二点复用性以及提高代码的可维护性
02.方法定义和调用
把一些代码打包在一起,用到的时候就调用
-
方法定义: 把一些代码打包在一起,该过程成为方法定义
-
方法调用:方法定义后并不是直接运行的,需要手动调用才能执行,该过程成为方法调用
最简单的方法定义和调用
-
方法定义:
(方法的定义要写在main方法的外面 class类的里面)
格式: 例: public static void 方法名(){ public static void playgame(){ 方法体(就是打包起来的代码); 七个打印语句; } }
-
方法调用:
格式: 例: 方法名(); playganme();
(方法必须先定义后调用,否现程序将报错; 看到方法进入方法,执行完毕回到调用处)
带参数的方法定义和调用
-
带参数方法定义:
单个参数:
格式: 例: public static void 方法名(参数){......} public static void 方法名(int number){......}
多个参数:
格式: 例: public static void 方法名(参数1,参数2,...){......} public static void 方法名(int number1,int number2){......}
-
带参数方法调用:
单个参数:
方法名(参数);
多个参数:
方法名(参数1,参数2,...);
(方法调用时,参数的数量与类型必须与方法定义中小括号里面的变量一一对应,即形参和实参必须一一对应,否则程序将报错.)
-
形参和实参
形参: 形式参数, 是指方法定义中的参数 实参:实际参数, 是指方法调用中的参数
带返回值方法的定义和调用
方法的返回值其实就是方法运行的最终结果
如果在调用处要根据方法的结果,去编写另一段代码逻辑,为了在调用处拿到方法产生的结果,就需要定义带有返回值的方法
-
带返回值方法的定义:
格式: 范例: public static 返回值类型 方法名(参数){ public static int getSum(int a, int b){ 方法体; int c = a + b; return 返回值; return c; } }
(如果没有返回值, 那么返回值类型可以写 void , 有返回值的话就要写返回值的类型, 方法名后面的小括号如果没有参数,可以空着不写)
-
返回值方法的调用:
1.直接调用: 2.赋值调用: 3.输出调用: 方法名(实参); 整数类型 变量名 = 方法名(实参); System.out.println(方法名)
03.方法的注意事项
-
方法不调用就不执行
-
方法与方法之间是平级关系,不能互相嵌套
-
方法的编写顺序和执行顺序无关, 和调用顺序有关
-
方法的返回值类型为void,表示该方法没有返回值,没返回值的方法可以省略return语句不写,如果要编写return,后面不能跟具体的数据,表示结束方法的意思
-
return语句下面,不能编写代码,因为永远执行不到,属于无效代码
04.方法的重载
-
同一个类中,方法名相同,参数(形参)不同的方法,就叫做方法的重载,与返回值无关
(参数不同 : 个数不同, 类型不同, 顺序不同) (Java虚拟机会通过参数的不同来区分同名的方法)
-
return与break关键字的区别:
-
return: 跟方法有关,表示结束方法或返回结果 如果方法执行到了return,那么整个方法全部结束,里面的循环也会随之结束了
-
berak: 跟方法没什么关系,结束循环或者switch
05.基本数据类型和引用数据类型
基本数据类型 (四类八种) : 整数类型,浮点数类型,布尔类型,字符类型 (变量中存储的是真实的数据, 数据值是存储在自己的空间中)
引用数据类型: 除了上述的其他所有类型 (只要是new出来的都是引用数据类型, 变量中存储的是地址值, 引用即使用了其他空间中的数据)
06.方法的值传递
-
方法传递基本数据类型的内存原理:传递基本数据类型时,传递的是真实的数据,形参的改变,不影响实际参数的值; 传递引用数据类型时,传递的是地址值,形参的改变,影响实际参数的值