1 内部类的概念
内部类是定义在另一个类中的类;下面类B是类A的内部类。即内部类对象引用了实例化该内部对象的外围类对象。
public class A{
class B {
}
}
2 为什么需要内部类?(来自JAVA核心技术)
- 内部类方法可以访问该类定义所在的作用域中的数据,包括私有数据。
- 内部类可以对同一个包中的其他类隐藏起来。
- 当想要定义一个回调函数且不想编写大量代码时,使用匿名内部类比较便捷。
3 内部类的分类
3.1 成员内部类
成员内部类:存在于某个类的内部,与全局属性或者方法同级的内部类就是成员内部类。
成员内部类特点:
- 成员内部类可以无条件访问外部类的所有成员属性和成员方法(包括静态成员和私有成员)。
- 成员内部类和外部类的属性