10、Java方法

Java方法

定义

Java方法是语句的集合,它们在一起执行一个功能

  • 方法是解决一类问题的的步骤的有序组合
  • 方法包含于类或对象中
  • 方法在程序中被创建,在其他地方被引用

设计原则:原子性:一个方法只完成一项功能,利于后期扩展

命名规则:首字母小写驼峰


方法包含以下部分

  • 修饰符 可选 pubilc static等
  • 返回值 无返回值时用void
  • 方法名
  • 参数类型 更像一个占位符,可选,可以不包含任何参数
  • 方法体 返回值 如果不是void ,需要return

拓展:值传递&引用传递 ???

方法的重载

重载:一个类中可以有相同的函数名,但 形参 不能相同

规则:

  1. 方法名称必须相同
  2. 参数列表必须不同(个数不同,类型不同,参数排列顺序不同均可)
  3. 方法的返回类型可以同也可以不同
  4. 仅仅返回类型不同不足以成为方法重载

方法名称相同时,编译器会根据调用方法的参数个数,类型等去逐个匹配,以确定方法,若匹配失败,则编译器报错

命令行传参

有时希望运行一个程序时在传递参数,需要靠传递命令行参数给main()函数来实现

可变参数

  • JDK1.5以后,支持可变参数
  • 指定参数类型后加(...)
  • 一个方法只能定义一个可变参数,必须是方法的最后一个参数,所有普通参数都要在它前面声明

可以处理重复性重载问题

package day4;

public class Demo01 {
    public static void main(String[] args) {
        Demo01 demo01 = new Demo01();
        demo01.test(1,2,3,4,5);
    }
    public void test(int... i) {
        System.out.println(i[0]);
        System.out.println(i[1]);
        System.out.println(i[2]);
        System.out.println(i[3]);
        System.out.println(i[4]);
    }
}
//  1
//  2
//  3
//  4
//  5

递归

递归就是自己调用自己

高频面试笔试点

递归结构包含两部分:

  • 递归头:如果没有头,将陷入死循环,用来控制什么时候不调用自身方法

    需要想办法让递归走到尽头

  • 递归体:什么时候需要调用自身方法

public class Demo02 {
    public static void main(String[] args) {
        System.out.println(f(5));
    }
    public static int f(int n) {
        if (n==1) {
            return 1;
        } else {
            return n*f(n-1);
        }
    }
}
//  120

小体量可以用递归,大体量最好少用

posted @ 2021-07-20 10:10  六个柠檬  阅读(30)  评论(0)    收藏  举报