什么是成员内部类?
无static修饰,属于外部类的对象。
JDK16之前,成员内部类中不能定义静态成员,JDK 16开始也可以定义静态成员了。
成员内部类的访问拓展:
1、成员内部类中是否可以直接访问外部类的静态成员?
2、
可以,外部类的静态成员只有一份可以被共享访问。
3、成员内部类的实例方法中是否可以直接访问外部类的实例成员?
4、
可以的,因为必须先有外部类对象,才能有成员内部类对象,所以可以直接访问外部类对象的实例成员
成员内部类是什么样的、有什么特点?
无static修饰,属于外部类的对象。
可以直接访问外部类的静态成员,实例方法中可以直接访问外部类的实例成员。
成员内部类如何创建对象?
外部类名.内部类名 对象名 = new 外部类构造器.new 内部类构造器();
匿名内部类:
本质上是一个没有名字的局部内部类,定义在方法中、代码块中、等。
作用:方便创建子类对象,最终目的为了简化代码编写。
特点总结:
匿名内部类是一个没有名字的内部类。
匿名内部类写出来就会产生一个匿名内部类的对象。
匿名内部类的对象类型相当于是当前new的那个的类型的子类类型。