内部类
(外部类的 内部 在定义一个新的类)
是外部类的一个成员
特征
- 独立的类 会被编译成独立的 。class
- class文件 会被冠以外部类的类名喝$符号 eg (outer$inner.class)
- 内部类不能用普通方式调用
- 可以自由访问外部类的成员
使用内部类的好处
内部内可以很好实现隐藏
一般类不允许有private protected 权限 但内部类 可以
内部类拥有外部类 所有元素访问权限
可实现多重继承
可避免修改接口而是先同一个类中 两种同名方法的调用 --?
种类
成员内部类
class out
方法内部类
匿名内部类(没有名字的内部类)
应用场合
- 只用到类的 一个实例
- 类 在定义后马上实例
- 非常短小
限制
不能有构造方法
不能定义任何静态成员变量和成员方法
不能收public protected private static修饰
静态嵌套类