1、Java中允许将一个类A声明在另一个类B中,则类A就是内部类,类B就是外部类
2、内部类的分类:成员内部类(静态、非静态) vs 局部内部类(方法内、代码块内、构造器内)
3、成员内部类:
一方面,作为外部类的成员:
调用外部类的结构
可以被static修饰
可以被四种不同的权限修饰
另一方面,作为一个类:
类内可以定义属性、方法、构造器
可以被final修饰,表示此类不能被继承。言外之意,不使用final,就可以被继承
可以被abstract修饰
4、关注如下的3个问题:
4.1、如何实例化成员内部类的对象
4.2、如何在成员内部类区分调用外部类的结构
4.3、开发中局部内部类的使用