JAVA-方法
1.1 方法的定义
[修饰符列表] 返回值类型 方法名(第一个首字母小写,后边单词大写)(形参列表){
方法体
};
ps:方法遵循自上而下运行
1.2方法调用
类名.方法名(实参列表)
方法调用时,压栈!结束时弹栈!先进后出!
1.2 方法重载
1.2.1 定义
JAVA编译时允许方法名相同的情况出现
优点:代码整齐美观,更利于编写
1.2.2 什么时候考虑方法重载??
当同一个类中如果‘功能1’和‘功能2’他们的功能是相似的,我们可以使用方法重载
1.2.3 方法重载条件:
1 在同一个类中
2 方法名相同(数据类型可以不同!!)
3 参数列表不同:
参数个数不同
参数类型不同
参数顺序不同
只要满足以上3个条件,我们可以说方法与方法之间发生重载!!!
PS:方法重载和方法“返回值类型”无关。
方法重载和方法的修饰符列表无关。
要与方法重复区别开!!重复是指方法的数据类型不同!方法重载是形参不同!
我自己理解的是,方法重载是指当形参个数,形参类型,形参顺序不同时,方法使用的功能一样,我们可以多写几个同名不同形参的方法来让JAVA自己来选择适合的方法,这就是方法重载!
方法重载:
public class text05 {//方法重载发生在同类中! public static void main(String[] args) { aVoid(100,1.2); } public static void aVoid (String a,int b){ //没什么难的,方法重载就是形参列表不同,你看sout时,()里面不就是输入值 //么 sun公司已经给你写好了,所以你可以随便输入数据类型~~ System.out.println(a + b); } public static void aVoid ( int a, double b){ System.out.println(a + b); } public static void aVoid ( double a, double b){ System.out.println(a + b); } }
方法重复
数据类型不同时就是重复!
同类中方法名不能重复哦~,只有不同类中才可以~
public class text05 {//方法重载发生在同类中! public static void main(String[] args) { } public static void aVoid(){} } class A1{ public static int aVoid(int a){ return a; } }
方法递归: