Java学习之函数
函数
函数
1.语法
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {
方法体语句;
return 返回值;
}
2.语法说明
修饰符:目前就用 public static,不做详细解释
返回值类型:就是功能结果的数据类型
方法名:就是起了一个名字,方便我们调用该方法。
参数类型:就是参数的数据类型
参数名:就是变量
参数分类:
1.实参:实际参与运算的数据
2.形参:方法上定义的,用于接收实际参数的变量
方法体语句:就是完成功能的代码块
return:结束方法
返回值:就是功能的结果,由return带给调用者。
3.函数分类
3.1. 无返回值函数(无传入参数)
public static void method(){
}
3.2. 带返回值函数(无传入参数)
public static int method(){
return 整型数值
}
3.3. 带参数函数
public static int method(String name){
return 整型数值
}
4.存储原理
- 调用时从方法区中加载方法进栈
- 执行完以后由JVM进行垃圾回收
5.函数重载
使用相同方法名,传入不同的参数列表,获得相对应的执行结果
public class FuncReload {
public static void main(String[] args) {
// 方法重载调用
System.out.println(sum(1, 2));
System.out.println(sum(1, 2,3));
}
//方法重载定义
public static int sum(int m,int n){
return m+n;
}
//方法重载定义
public static int sum(int m,int n,int p){
return m+n+p;
}
}
6.递归算法
6.1. 原理
先逐个加载方法到栈中,加载完毕后再逐个弹栈执行
6.2. 递归实现阶乘
public class FuncRecursion {
public static void main(String[] args) {
// 调用递归算法求阶乘
int result=jc(5);
System.out.println(result);
}
//求一个数的阶乘
public static int jc(int n){
//阶乘的出口
if(n==1){
return 1;
}
else{
return n*jc(n-1);//递归调用自身
}
}
}
7. 注释生成API
7.1. 文档注释
7.1.1. 类注释
在类定义上方添加:
/**
*
* @author 代码作者
*
*/
7.1.2. 方法注释
在方法体声明上方添加:
/**
*
* @param n 参数含义
* @return 返回值含义
*/
7.2. 生成API文档
在eclipse中有直接可以生成Java doc API文档的功能,
操作:
1.选择菜单:Project-Javadoc-Generation
2.选择要生成API的包以及对应访问修饰符级别
3.最后选择保存位置
下面是我生成的API文档: