方法自身调用自身的方法,必须要有方法的出口(可以结束方法的条件)。递归的次数不宜过多。
    容易造成栈内存溢出错误 - StackOverflowError

    运行过程:直接递归
    main-method_1(没有结束)method_2(没有结束)method_3(没有结束)method_4(结束)method_3(结束)method_2(结束)method_1(结束)

    所以这个i累加了7次

    1. package Test20_Demo.Demo03;/*
    2. @create 2020--12--10--15:22
    3. */
    4. public class DiguiDemo2 {
    5. //成员变量
    6. private static int i= 1 ;
    7. public static void main(String[] args) {
    8. //调用方法
    9. method();
    10. }
    11. public static void method() {
    12. System.out.println("方法开始:" + i);
    13. //设置递归出口
    14. if (i == 4) {
    15. return;//结束方法并且返回结果
    16. }
    17. i++;
    18. method();
    19. i++;
    20. System.out.println("方法结束!"+i);
    21. }
    22. }