什么是内部类?
一、什么是内部类
在一个类(或方法、语句块)的内部定义另一个类,后者称为内部类,有时也称为嵌套类。
?
二、内部类特别
1、内部类可以体现逻辑上的从属关系,同时对于其他类可以控制内部类对外不可见等;
2、外部类的成员变量作用域是整个外部类,包括内部类。但外部类不能访问内部类的private成员;
3、逻辑上相关的类可以在一起,可以有效的实现信息隐藏;
4、内部类可以直接访问外部类的成员,可以用此实现多继承;
5、编译后,内部类也被编译为单独的类,不过名称为outclass$inclass的形式。
?
三、内部类的分类
1、类级:成员式,有static修饰;
2、对象级:成员式,普通,无static修饰;
?
3、本地内部类:局部式;
4、匿名级:局部式
?
public class Test {public static final int TOTAL_NUMBER = 5;public int id = 123;public void t1() {final int a = 15;String s = "t1";new Outer() {public void testA() {System.out.println(TOTAL_NUMBER);System.out.println(id);System.out.println(a);}}.testA();}}?