1.四种内部类:成员内部类 匿名内部类 静态内部类 方法内部类
2.内部类特点:外部类可以创建内部类对象,内部类能够引用外部类对象
编译器将内外部类放置在同一个包中,在内部类中交易额个包可见的构造器。整个类编译后Out$Inner类中有一个指向外部类的引用this$,通过这个引用 得到外部类中的成员。编译器在外部类还创建了一个静态的方法,它将返回值作为参数传递它的值域。
静态内部类:除了只能访问外部类中的静态成员,其他与一般内部类无区别。
方法内部类也有两个特点
(1) 方法内部类无访问修饰符除了final abstract 即方法内部类对包围它的方法之外的任何东西都不可见。
(2) 方法内部类只能访问该方法的局部变量,而且局部变量一定是final修饰的,也可访问外部类成员也必须final修饰
匿名内部类:实现一个接口或者继承一个类,有且一个。访问外部类中成员必须final修饰。