Java类的高级概念--类的内部类
内部类
在Java中,还可以在类的内部定义类。
这种在类的内部定义的类,称为内部类。内部类所在的类称为外部类。
一篇Java文件中可以定义多种类型的类:兄弟类,成员内部类,静态内部类,局部内部类,匿名内部类.
Java文件如果内部包含了多个类,产生类文件的特点:
1、Java文件中,包含几个类,就对应的产生几个相应里的类文件.
2、Java文件的名称,不一定和类文件的名称保持一样,兄弟类类文件的命名规则就是“兄弟类.class”
成员内部类类文件的命名规则就是“外部类$内部类.class”.
具体内部类类文件的命名规则就是“外部类$内部类出现的次数+内部类.class”.
局部内部类,同样跟局部变量一样,不能添加访问修饰符.
局部内部类,无法被方法外部访问.
局部内部类,内部无法访问外部类的成员.(此时的this。代表的是局部内部类的实例).
成员内部类的地位:等同于全局变量.
成员内部类,内部可以使用外部类所定义的所有的成员(成员变量,成员方法).
兄弟类 访问修饰符,只能是默认; 还可以用final修饰符.
兄弟的调用,跟平时一样.
成员内部类,需要先实例化外部类.