在Java中,可以将一个类定义在一个方法或类中,这样的类称为内部类。
内部类一般分为三种:成员内部类、局部内部类和匿名内部类。
-成员内部类:见名知意,就是一个类嵌套在另一个类中,看似是外部类的成员一样,可知可以用private、public等访问权限修饰符修饰。
调用: 外部类标识符.内部类标识符 标识符=new 外部类标识符().new 内部类标识符();
-
局部内部类:就是一个类嵌套在一个方法中,可以看作是方法的局部变量,所以不能用private等访问权限修饰符修饰。
-
匿名内部类:是唯一一种没有构造方法的类,使用范围非常有限,匿名内部类在编译的时候由系统自动起名为Outter$1.class。一般来说,匿名内部类用于继承其他类或是实现接口,并不需要增加额外的方法,只是对继承方法的实现或是重写。