From d1a059b325cc9d0575cd6fc931c9adba6b1f41fa Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Sun, 9 Aug 2026 11:51:51 +0800 Subject: [PATCH] =?UTF-8?q?s-day08-=E9=80=92=E5=BD=92=E7=9A=84=E6=A6=82?= =?UTF-8?q?=E5=BF=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- s-day08/src/com/inmind/digui02/Demo08.java | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 s-day08/src/com/inmind/digui02/Demo08.java diff --git a/s-day08/src/com/inmind/digui02/Demo08.java b/s-day08/src/com/inmind/digui02/Demo08.java new file mode 100644 index 0000000..5685dd8 --- /dev/null +++ b/s-day08/src/com/inmind/digui02/Demo08.java @@ -0,0 +1,45 @@ +package com.inmind.digui02; +/* +9.递归的概念 + +递归:一个方法直接或者间接调用字节 + 直接调用:A->A->A->A->A + 间接调用:A->B->A->B + + 递归代码必须要有结束条件,如果没有结束条件,那么一定会栈内存溢出错误 + +扩展: + 1.内存溢出:内存空间总共有4G,但是我们要开辟超出4G的空间,内存溢出 + 2.内存泄漏:一个对象已经不再使用了,但是它还占用着内存,无法释放 + */ +public class Demo08 { + static int count = 0; + public static void main(String[] args) { + method1(); + System.out.println("程序结束"); + } + + private static void method1() { + System.out.println(count); + count++; + if (count > 16000) { + return; + } + method2(); + } + + private static void method2() { + method1(); + } + + //直接调用:A->A->A->A->A + public static void methodA(){ + System.out.println(count); + count++; + if (count > 20000) { + //提前结束当前方法 + return; + } + methodA(); + } +}