七叶笔记 » java编程 » java中的内部类是什么

java中的内部类是什么

什么是内部类

在一个类内部的类,我们称之为内部类。

内部类可以很好地实现隐藏,一般的非内部类是不允许有 private 与 protected 权限的,但内部类可以。内部类拥有外围类的所有元素的访问权限。

内部类分类:

内部类可以分为:实例内部类、静态内部类和成员内部类,每种内部类都有它特定的一些特点。

在类 A 中定义类 B,那么类 B 就是内部类,也称为嵌套类,相对而言,类 A 就是外部类。如果有多层嵌套,例如类 A 中有内部类 B,而类 B 中还有内部类 C,那么通常将最外层的类称为顶层类(或者顶级类)。

内部类也可以分为多种形式,与变量非常类似,如图 1 所示:

47229d09a0efa6c29d42f45a79c669e.png

内部类的特点:

1、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的 .class 文件,但是前面冠以外部类的类名和 $ 符号。

2、内部类不能用普通方式访问。内部类是外部类的成员,因此内部类可以自由地访问外部类的成员变量,无论是否为 private 的。

3、内部类声明成静态的,就不能随便访问外部类的成员变量,仍然是只能访问外部类的静态成员变量。

推荐教程:Java教程

相关文章