分为:静态成员内部类和非静态成员内部类
一方面,作为外部类的成员
1、调用外部类的结构:属性、方法等
2、可以被static修饰:此时表示静态成员内部类;此时就不能再使用外层类的非static的成员变量
3、可以被4种不同的权限修饰
另一方面,作为一个类
1、类内可以定义属性、方法、构造器等
2、可以被final修饰,表示此类不能被继承。言外之意,不使用final,就可以被继承
3、可以被abstract修饰,表示此类不能被实例化
实例化成员内部类的对象
在成员内部类中区分调用外部类的结构
局部内部类
声明在方法内、代码块内、构造器内
Java8新特征:① 需要显式的声明为final;② java8中可以省略final的声明