参考文章:https://www.cnblogs.com/dolphin0520/p/3811445.html
内部类主要有以下几种:
(1)成员内部类,即子类在父类中进行定义,用 A().B.class.constructors[0].isMemberClass判断
注意:使用反射进行初始化时,会在构造方法中添加一个参数,即当前所在类的引用!!!
class A {
class B {
}
}
(2) 局部内部类,在方法中进行定义的
class A {
public void add(){
class B {
}
}
}
(3) 匿名内部类:在接口处实现
(4) 静态内部类: 和外部类几乎一样