一,一般内部类
1, 与外部类的成员变量同时定义。
2, 可以引用外部类的 各种成员变量;
3, 可以定义这个内部类为公有 :可以在外部用 “外部类.内部类”来引用
定义为私有,则只能在这个文件中的类引用。
二,静态内部类
1, 只有内部类才能声明为静态的
2, 定义在接口中的内部类 自动为公有静态的。
3, 不能引用外部类,不能引用外部类的成员变量,但是可以使用外部类的静态变量。
三,局部内部类
1, 在外部类中一个成员函数中定义的类;没有类修饰符:公有、私有
2, 只能这个函数能引用该类
3, 可以引用外部类的 各种成员变量;
4, 可以引用这个函数参数中 类型修饰为final 的 参数变量。
四,匿名内部类(与局部内部类作用相同,只是没有名字的类)
1, 在一个函数中定义,没有构造函数
2, 可以引用这个函数参数中 类型修饰为final 的 参数变量。
3, 该类可以引用外部类的 各种成员变量(私有,静态的等);