什么是内部类
定义在类当中的一个类,内部类可以直接访问外部类当中的成员
为什么要有内部类
- 增强封装,把内部类隐藏在外部类当中,不允许其它类访问这个内部类
- 增加了代码一个维护性
内部类分类
实例内部类
直接定义在类当中的一个类,在类前面没有任何一个修饰符,不属于类的,不使用static修饰的内部类
实例内部类的创建,想要使用内部类,必须得要先创建外部类。
实例内部类注意点
- 想要使用内部类,必须得要先创建外部类
- 在内部类当中可以访问外部类当中的成员
- 在内部类当中,不能有静态的成员
- 外部类是不能直接访问内部当中的成员
变量的访问
静态内部类
在内部类前面加上static,属于类的内部类
静态内部类的创建
静态内部类注意点
- 静态内部类是不需要创建外部对象
- 在静态内部类当中,是没有外部类引用
- 静态内部类,是可以访问外部类的静态成员
- 访问静态内部类当中的静态成员
- 静态内部当中可以定义静态成员,也可以定义非静态成员
静态内部类当中访问外部的普通变量
匿名内部类
就是一个没有名字的局部内部类
只使用一次的时候,来去使用匿名内部类
匿名内部类必须得要有父类才,或者是实现了接口
结构
new 父类的构造器 或 接口(){ 内部写的代码(在 new 时候就会自动执行) }