1、方法的概述和定义格式
1.1、方法的概述
假设有一个游戏程序,程序在运行过程中,要不断地发射炮弹(植物大战僵尸)。发射炮弹的动作需要编写100行的代码,在每次实现发射炮弹的地方都需要重复地编写这100行代码,这样程序会变得很臃肿,可读性也非常差。为了解决代码重复编写的问题,可以将发射炮弹的代码提取出来放在一个{}中,并为这段代码起个名字,这样在每次发射炮弹的地方通过这个名字来调用发射炮弹的代码就可以了。上述过程中,所提取出来的代码可以被看作是程序中定义的一个方法,程序在需要发射炮弹时调用该方法即可
1.2、方法定义及格式
简单的说:方法就是完成特定功能的代码块
在很多语言里面都有函数的定义 , 函数在Java中被称为方法
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体;
return 返回值;
}
1.3、方法格式解释
修饰符 主要记住 public static
返回值类型 用于限定返回值的数据类型
方法名 一个名字,为了方便我们调用方法
参数类型 用于接收调用方法时传入的数据的类型
参数名 用于接收调用方法时传入的数据的变量
方法体 完成功能的代码
return 结束方法,把返回值带给调用者
样例代码:
/*
* 方法:其实就是完成特定功能的代码块
*
* 定义格式:
* 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,...) {
* 方法体;
* return 返回值;
* }
*
* 格式解释:
* 修饰符: 目前记住这里使用public static即可
* 返回值类型: 用于限定返回值的数据类型
* 方法名: 方便我们调用方法
* 参数类型: 用于限定调用方法时传入的数据的数据类型
* 参数名: 用于接收调用方法时传入的数据的变量
* 方法体: 完成特定功能的代码
* return 返回值:结束方法,并且把返回值带给调用者
*
*/
public class MethodDemo {
public static void main(String[] args) {
}
}
2、定义一个求和方法
2.1、定义方法注意事项
- 写一个方法首先有两点需要明确
- 返回值类型 明确功能结果的数据类型
- 参数列表 明确有几个参数,以及参数的类型
- 按照格式和两个明确来完成如下功能
- 求两个数据之和的案例
样例代码:
/*
*
* 需求:求两个数据之和的案例
*
* public static ??? sum(???) {...}
*
* 两个明确:
* 返回值类型:其实就是要我们明确方法结果的数据类型
* 参数列表:其实就是要我们明确有几个参数参加,并且每个参数都是什么数据类型的
*
* 注意事项:方法与方法是平级关系,不能嵌套定义
*/
public class MethodDemo {
public static void main(String[] args) {
}
/*
* 需求:求两个数据之和的案例
*
* 两个明确:
* 返回值类型:int
* 参数列表:int a,int b
*/
public static int sum(int a,int b) {
int c = a + b;
return c;
}
}
3、有明确返回值的方法调用
- 有明确返回值的方法调用:
- 单独调用,没有意义
- 输出调用,有意义,但是不够好,因为我不一定非要把结果输出
- 赋值调用,推荐方式
样例代码:
/*
* 有明确返回值的方法的调用:
* A:单独调用,没有什么意义。
* B:输出调用,有意义,但是不够好,因为我可能需要对求和的结果进行进一步的操作
* C:赋值调用
*/
public class MethodDemo2 {
// 求和的方法
public static int sum(int a, int b) {
return a + b;
}
public static void main(String[] args) {
// 单独调用
// sum(10,20);
// 输出调用
// System.out.println(sum(10,20));
// 赋值调用
int s = sum(10, 20);
// s+=100;
System.out.println("s:"+s);
}
}
4、方法调用流程图