内部类
Posted kikochz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内部类相关的知识,希望对你有一定的参考价值。
内部类
#内部类
内部类
? |-- 非静态内部类 (成员内部类)
? |-- 静态内部类 (类内部类)
? |-- 局部内部类
? |-- 匿名内部类
#非静态内部类
-
相当于Outer的成员变量, 可以访问实例变量,实例方法, 但是不能访问类变量
-
通过
new Outer().new Inner()
来调用 -
如果外部类和内部类具有相同的成员变量或方法, 访问外部类的成员变量或方法时, 需要使用
this
关键字
#静态内部类
- 用
static
修饰的内部类, 称为静态内部类, 完全属于外部类本, 不属于外部类某一对象 - 静态内部类可以包括静态成员, 也可以包含非静态成员, 但是在非静态内部类中不可以声明静态成员
- 静态内部类不可以访问外部类的实例成员, 只能访问类成员, 因为是完全独立的两个类
- 内部类被当成外部类成员, 但外部类不能访问内部类的实现细节
- 通过
new Inner.Outer()
来调用
#局部内部类
- 局部内部类就是定义在外部类的方法中, 方法内部类只在该方法内可以用
- 方法内部类不能使用访问控制符和static修饰符, 只能访问
final
修饰符
以上是关于内部类的主要内容,如果未能解决你的问题,请参考以下文章