方法调用
有static关键字的用类名.方法名调用
没有static关键字的实例化方法所在的类后,用对象调用方法:对象类型 对象名= new对象值
注意
同一个类中static方法不能直接调用非static方法:因为static是和类一起加载的,而非static方法是在类实例化之后才存在的,所以不能用已经存在的去调用一个不存在的方法
方法的重载
在同一个类里面方法名一样,形式参数的参数类型或者个数不同或者参数排列顺序不同叫方法重载,方法返回类型可以相同也可以不同
命令行传参
idea下方的terminal就是命令行窗口,进入默认是项目路径,编译时需要到项目模块下的包下的类javac com.yang…类名提示:
错误: 仅当显式请求注释处理时才接受类名称 ‘com.yang.scanner.XunHuan’
此时在cmd界面需要先javac 编译类,再回到src目录运行.class文件并加入参数
可变参数
相当于方法重载的简化写法
一个方法中只能有一个可变参数,且可变参数只能是方法的最后一个参数
public static void main(String[] args) {
add(1,2,4,1,5,6,5,5);
}
public static void add(int a,double b,float c,int...f){
for (int i = 0; i < 5; i++) {
System.out.println(a+b+c+":::"+f[i]);
}
}
递归
方法自己调用自己(调用递归太多容易影响性能)
递归方法需要有递归头:作用是结束标志,否则进入死循环;有递归体:作用是什么时候需要调用自身方法
//递归
public static int f(int n){
if (n==1){
return 0;
}else {
return n*f(n-1);
}