方法的重载
1.定义:在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可
“两同一不同”:同一个类、相同方法名
参数列表不同:参数个数不同,参数类型不同
2.举例:
Arrays类中重载的sort() / binarySearch()
3.判断是否是重载:
跟方法的权限修饰符、返回值类型、形参变量名、方法体都没有关系
4.在通过对象调用方法时,如何确定某一个指定的方法:
方法名 —> 参数列表
可变个数形参的方法
使用说明:
- 1.jdk5.0新增的内容
- 2.具体使用
- 2.1可变个数形参的格式:数据类型 … 变量名
- 2.2当调用可变个数形参的方法时。传入的参数个数可以是:0个,1个,2个,…
- 2.3可变个数形参的方法与本类中方法名相同,形参不同的方法之间构成重载
- 2.4可变个数形参的方法与本类中方法名相同,形参类型也相同的数组之间不构成重载。换句话说,二者不能共存
- 2.5可变个数形参在方法的形参中,必须声明在末尾
- 2.6可变个数形参在方法的形参中,最多只能声明一个可变形参。
java的值传递机制
- 如果参数是基本数据类型,此时实参赋给形参的是,实参真实存储的数据值
- 如果参数是引用数据类型,此时实参赋给形参的是,实参存储数据的地址值
推广: - 如果变量是基本数据类型,此时赋值的是变量所保存的数据值。
- 如果变量是引用数据类型,此时赋值的是变量所保存的数据的地址值
递归方法
1.定义:一个方法体内调用它自身
2.如何理解递归方法?
- 方法递归包含了一种隐式的循环,它会重复执行某段代码,但这种重复执行无须循环控制
- 递归一定要向已知方向递归,否则这种递归就变成了无穷递归,类似于死循环。