00:00
那么再往下的话,我们说了方法重载之后呢,再往下我们说了一下方法递归。是不是,哎方法递归需要掌握什么内容呢。首先需要什么呀?来理解什么是方法递归?对吧,哎,什么是递归。就是方法啊,自身调用什么自身啊,然后呢,第二点呢,你要需要知道的是哎递归啊,哎递归的这个这个这个这个这个递归啊呃,使用递归的时候啊,必须添加什么呀,结束条件。啊,没有结束条件。会发生什么?会发生对吧,内存溢出。错误。啊叫做stack overflow overflow这个单词表示错,Overflow表示溢出,然后stack表示占啊堆栈啊,堆栈内存溢出错误啊,所以说必须要有结束条件啊,必须要结束条件。
01:11
第三个事儿,要知道什么呢?哎,要绘画出什么呢?递归方法的内存。结构图啊,就是递归的过程当中,你能把图画出来啊,递归的过程当中可以将图什么呢?哎,将图画出来啊,画出来。那这点也是需要大家知道的啊,知道的。那么还有一点呢,我们当时在讲这个方法递归的时候,我说了一下就是。呃,我们导致内存溢出的这个错误的一个最主要原因是因为什么呀?最主要原因是因为我们这个没有结束条件会一直压站对不对啊,会一直压站啊,原因是什么?一直什么呀,压占啊,一直压占没有什么弹占啊,占内存不够。
02:01
内存不够用啊,是这样一个情况啊,那么再再往下的话,咱们说了什么,能够什么呀,使用循环代替什么,哎,能够使用循环代替这个递归的。尽量使用什么呀,循环。循环的执行耗费内存什么呀?少一些啊,循环的执行耗费内存少一些。啊呃,递归。啊,耗费内存相对多一些。啊,另外递归使用不当很容易啊,内存溢出。当然,只有极少数情况下只能用递归啊。其他。
03:00
代码解决不了,解决不了问题啊,了解一下这个这个这个东西啊,尽可能使用循环啊。另外在这里呢,我还说了一下,哎,当递归有什么呀,结束条件,并且结束条件合法的时候。是不是哎,当递归条件,当这个结束条件合法的时候啊,呃,就一定不会内存溢出吗。啊,也不一定啊,可能递归的什么太深了。对吧,哎,可能递归的太深了,说过这一点啊,我在这里呢,还分享了一些啊,分享了一些递归方面的。经验。啊,这个递归方面的经验,就是说在实际的开发中,如果你遇到了这个战内存技术错误,你怎么办?对吧,在实际的是不是,哎说明在什么呀,在实际的开发中遇到什么呀?哎,那遇遇到这个这个递归导致的占内存溢出错误时怎么办?哎,当时我怎么说的呀,哎第一步先干啥呀,先检查结束条件是否正确对不对,哎第二步是什么呀,如果正确。
04:25
对吧,哎,可以调整什么呀,JVM的什么占内存大小。啊,占内存大小。对,你可以可以可以通过这个参数,你可以看一下是吧,哎,加va-X参数啊,可以看一下,整个呢,这个其实就是我们的一个,呃,递归这块的一个一个一个内容啊,需要理解的,需要大家掌握的啊,就这些东西啊,这些东西,总之昨天的东西其实不是很多啊,就两个,一个是关于这个重载啊,一个是方法的递归啊。
我来说两句