- 1.目的
- 2.特点
- 3.结构
- 4.语法
- 5.方法的形参和实参
- 6.方法重载(overload)
- 6.1 概念
- 6.2 目的
- 6.3 必要条件
- 6.4 案例
- 7. 不定参数
- 7.1 语法
- 8. 方法递归
- 8.1 递归所需的两个必要的流程
- 8.2 案例
2.特点1.模块化
2.复用性
3.应用简单
3.结构 4.语法1.方法不能嵌套,定义在类的方法外
2.方法不调用不执行
public static int add(int a,int b){
int c = a + b;
return c;
}
- public: 访问控制符
- static: 静态
- int: 方法的返回类型
- add: 方法名称
- int a, int b : 参数列表
- 大括号: 作用域
(int a, int b); // a, b为方法的形参–形式上的参数可以任意名称
6.方法重载(overload) 6.1 概念int x = add(4, 6);// 4,6为方法的实参, a = 4, b = 6
如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。
在重载中:方法名必须完全相同,但是形参的类型或数量不一样,编译器能够运行
重载在本质上,命名并没有重复,它会将方法名转化为另一种形式,例如:
- add_int_int
- add_double_double
即:方法名_类型_类型…
6.2 目的类中复用方法的名称,避免大量的方法名称命名
例如:
add(1,2) //两个数相加
add(1,3,3) //三个数相加
- 在同一个类中
- 方法名称完全相同
- 方法的参数类型或者数量不同
1.形参的类型不同
public static void add(int a ,int b) {
}
public static void add(double a,int b) {
}
2.形参的数量不同
public static int add(int a, int b){
return a + b;
}
public static int add(int a , int b ,int c){
return a + b + c;
}
7. 不定参数
7.1 语法不定参数本质是传入数组,但允许调用者随意传入参数个数,使用比较灵活。
public void func(int ... a ){
for(int i=0;i < a.length;i++){
System.out.print(a[i] + "t");
}
}
8. 方法递归
8.1 递归所需的两个必要的流程递归算法(英语:recursion algorithm)在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。
- 递归的终止条件
- 解决问题的通项公式
public static int f(int n){
if(n==1) return 1; //递归终止条件
return n * f(n-1); //一般表达式
}
public static int sum2(int n) {
if(n==1) return 1;
return n+sum2(n-1);
}



