1、递归
(1)递归的分类:直接递归(方法自身调用自己),间接递归(A方法调用B方法,B方法调用C方法,C方法调用A方法);
(2)注意事项:1》递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出;
2》递归次数不能太多,否则也会发生栈内存溢出;
3》构造方法,禁止递归(编译就会报错,原因:构造方法是创建对象使用的,一直递归会导致内存中有无数多个对象);
(3)使用前提:调用方法的时候,方法的主体不变,每次调用方法的参数不同,可以使用递归;