一、什么是方法?
方法就是将重复且有效的代码进行抽取,抽取的形式就是方法
二、定义方法的格式
修饰符 方法返回值类型 方法名(参数类型,参数名……){
方法体;
return 方法返回值;
}
- 方法返回值要与方法返回值类型对应
- 如果方法没有返回值,方法返回值类型要设置为void
- 方法不可嵌套定义(方法体内部不能再定义方法)
三、方法的作用
代码的复用
四、注意事项
- 两个明确
- 返回值类型
- 参数列表
- return 两个功能
- 结束方法
- 将返回值进行返回
- 考虑参数所有取值情况还要进行对应的处理
五、传参问题
所有方法的执行都在栈中
实参:实际传入值的参数
形参: 接收实参的值
- 如果实参是基本数据类型,传递的值是拷贝值
- 如果实参是引用数据类型,传递的是地址的拷贝值
- 如果传递的地址值找到了原堆内存就会影响原来的值
- 如果传递的地址值没有找到,堆堆内存就不会影响原来的值
六、递归
自己调用自己
七、方法的重载
1、什么是方法的重载
在同一个类中,有多个方法名相同(两个或两个以上),但是参数类型、个数、顺序不同方法,这就是方法的重载
2、什么是参数列表?
参数列表包含参数的类型、参数的个数、参数的顺序,只要有一个不同就叫做参数列表不同
3、重载的要求
- 方法名称必须相同
- 参数列表必须不同
- 方法返回值类型可以不同
- 仅仅是返回值类型不同,不能叫做方法的重载
4、重载示例
/**
* 方法名:test
* 返回值类型:void
* 参数列表:无
*/
public void test(){
}
/**
* 方法名:test
* 返回值类型:int
* @param num1
* @param num2
*/
public int test(int num1,int num2){
return num1+num2;
}
/**
* 如果只是返回值类型不同,报错
*/
public int test(){
return 1;
}
4、精确匹配与相对匹配
- 精确匹配
- 相对精确匹配