成员内部类
成员内部类其实就是在类的内部嵌套一个类,外面的称为Outer外部类,里面的称为Inner内部类。内部类通常服务于外部类,对外不具备可见性。内部类可以直接访问外部类的所有成员,有个隐式的引用:外部类名.this
匿名内部类
当我们想要创建一个类(派生类),但是该对象只被创建一次,则此类不必命名。
public class NstInnerClassDemo{
public static void main(String[] args){
Coo o1 = new Coo(){
...
}
}
}
abstract class Coo{
}
tips
- 内部类有单独的
.class
字节码文件。- 成员内部类的字节码文件名为
外部类名$内部类名.class
;- 匿名内部类的字节码文件名为:
外部类名$1.class
,从1开始。