1.什么是方法
方法就是定义在类中的具有特定功能的一段独立小程序,用来完成某个功能操作。在某些语言中方法也称为函数或者过程。
特殊的main方法,该方法是程序的入口,由虚拟机来调用执行。在日常的开发中,不可能把程序的所有功能都放到main方法中,我们需要定义其它的方法来完成指定的功能,需要完成该功能时只需要调用方法即可。
2.方法声明&调用
2.1方法声明格式
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,……) {
// 执行语句;
return 返回值;
}
方法格式说明:
-
修饰符,用于控制方法的访问权限(后面的课程会细讲)。
-
返回值类型,方法需要返回值的数据类型,如无返回值,必须声明返回值类型为void。
-
方法名,方法的名字,要求必须符合标识符规范,并且采用小驼峰命名法则。
-
形参列表,由参数类型和参数名组成,形参可以为任意多个,用于给方法内部传递数据。
-
执行语句,书写方法需要实现的功能操作。
-
返回值,如果定义了返回值类型,那么返回值和返回值类型必须保持一致;如果定义的返回值类型为void,那么需要省略返回值,也就是直接返回return ;即可
注意:当方法返回值类型为void时,还可以省略retun;
2.2方法调用格式
方法名(实际参数1, 实际参数2, ……);
实际参数(简称实参):传递给形式参数的具体数值,对应着形式参数(简称形参)。
注意事项:
-
形式参数(形参)和实际参数(实参)的类型和个数必须一一对应。
-
在方法中只能调用方法,不可以在方法内部再定义方法。
-
当方法有返回值类型时,可以用一个变量用于接收方法的返回值,该变量的类型必须和方法返回值类型保持一致。
3.方法的运用
3.1方法使用概述
- 方法的使用,首先明确两个需求:
-
明确要定义的功能最后的结果是什么?
-
明确在定义该功能的过程中,是否需要未知内容参与运算?
- 方法的使用分为两个步骤:
-
定义方法
-
调用方法
- 定义方法,根据是否有参数列表、是否有返回值,可将定义方法分为四类:
-
无参无返回值方法
-
无参有返回值方法
-
有参无返回值方法
-
有参带返回值方法
- 调用方法,根据方法是否有返回值,可将调用方法分为两类:
-
有返回值方法,可以用一个变量来接收返回值,也可以忽略返回值。
-
无返回值方法,不能用一个变量来接收方法的void返回值。
3.2无参无返回值方法
需求:在方法中输出“hello world”。
分析:不需要参数和返回值,应该选用无参无返回值方法。
【示例】
// 需求:在方法中输出“hello world”。
public static void main(String[] args) {
// 调用方法
show();
}
// 声明方法:无参无返回值方法
public static void show() {
System.out.println("hello world");
}
3.3无参有返回值方法
需求:调用方法获得常量3+4的和。
分析:不需要外界传入参数,但是需要返回常量3+4之和。
【示例】
// 需求:调用方法获得常量3+4的和。
public static void main(String[] args) {
// 调用方法:可以选择用一个变量接收返回值,也可以忽略返回值
int num = add(); // 接收返回值
add(); // 忽略返回值
}
// 声明方法:无参有返回值方法
public static int add() {
return 3 + 4;
}
3.4有参无返回值方法
需求:在方法中输出指定两个int变量的和。
分析:需要外界传入两个int类型的参数,但不需要返回值。
【示例】
// 需求:在方法中输出指定两个int变量的和。
public static void main(String[] args) {
// 定义两个变量
int a = 3, b = 4;
// 调用方法
add(a, b);
}
// 声明方法:有参无返回值方法
public static void add(int num1, int num2) {
int sum = num1 + num2;
System.out.println("sum: " + sum);
}
3.5有参有返回值方法
需求:调用方法获得指定两个double变量的和。
分析:需要外界传入两个double类型的形参,并返回两个double类型形参之和。
【示例】
// 需求:调用方法获得指定两个double变量的和。
public static void main(String[] args) {
// 定义两个变量
double a = 3, b = 4;
// 调用方法:可以选择用一个变量接收返回值,也可以忽略返回值
double sum = add(a, b); // 接收返回值
add(a, b); // 忽略返回值
}
// 声明方法:有参有返回值方法
public static double add(double num1, double num2) {
return num1 + num2;
}
4.方法调用过程
重点调用方法的内存图分析,详情请查看下图。
ps:如需最新的免费文档资料和教学视频,请添加QQ群(627407545)领取。f