内部类(嵌套类):定义在另一个类的范围内的类。
通常,如果内部类只是被外部类使用,那就将该类定义为内部类。
内部类的特征
1)一个内部类被编译成一个名为OuterClassName$InnerClassName.class的类;
2)内部类可以引用定义在它嵌套的外部类中的数据和方法;
3)可见性修饰符定义内部类,与类成员遵从一样的可见性原则;
4)可将内部类定义为static。(可使用外部类的名字访问)
5)内部类的对象经常在外部类中创建;(但可从另一个类中创建:
若内部类非静态->OuterClass.InnerClass innerObject=outerObject.new InnerClass();
若内部类静态->OuterClass.InnerClass innerObject=new OuterClass.InnerClass();
匿名内部类:
new SuperClassName/InterfaceName(){
//Implement or override methods in superclass or interface
//other methods if necessary
}