1. 内部类(Inner Class),内部类共分为 4 种。
2. 静态内部类(static inner class):只能访问外部类的静态成员变量与静态方法,
声明静态内部类:public OutClass{ public static class InnerClass{}}
生成静态内部类对象:OuterClass.InnerClass inner = new OuterClass.InnerClass();
3. 成员内部类(member inner class):可以访问外部类的静态与非静态的方法与成员变量。
声明成员内部类:public OutClass{ public class InnerClass{}}
在外部类中生成内部类的对象:InnerClass inner =this.new InnerClass();
在外部类外生成成员内部类对象:OuterClass.InnerClass inner=new OuterClass().new InnerClass();
4. 若想在成员内部类中访问外部类的成员变量,语法为: OuterClass.this.a;
5. 局部内部类(Local Inner Class):定义在方法当中,不能声明为public、protected、private和static,只能访问方法中声明的 final 类型的变量。
6. 匿名内部类(Anonymous Inner Class):没有名字的局部内部类。匿名内部类会隐式地继承一个父类或实现一个接口。
7. 所谓递归( Recursion ),就是方法调用自身。对于递归来说,一定有一个出口,让递
归结束,只有这样才能保证不出现死循环。
8. 作业:给定任意一个目录,以树形方式展现出该目录中的所有子目录和文件。另外,
在展现的时候将目录排在上面,文件排在下面。每一层要加上缩进。
9. IO流:IO-1.pdf、IO-2.pdf