根据位置的,java内部类可以分为4类:静态内部类,成员内部类,局部内部类,匿名内部类。
1)静态内部类 使用static修饰,声明在类体中。静态内部类中可以访问外部类的静态成员。
2)成员内部类 声明在类体中,不使用static,具有累的成员特征,也就是,必须有类的实例才能创建内部类实力。 内部类实例可以访问共享外部类的成员变量。
3)局部内部类 把类声明在方法中,即使局部内部类,作用域类似于局部变量。
4)匿名内部类 非常常见,可以写在任何地方,就像一般的语句。语法更像是创建对象。 匿名内部类是对原类的一个继承,同时创建了实例。匿名内部类不能写构造器。 匿名内部 类可以从抽象类或者接口继承,必须提供抽象方法的实现。