使用匿名内部类的过程中,我们需要注意如下几点:
1、使用匿名内部类时,我们必须是继承一个类或者实现一个接口,但是两者不可兼得,同时也只能继承一个类或者实现一个接口。
2、匿名内部类中是不能定义构造函数的。
(匿名内部类没有名字,没办法写构造函数,但是可以用初始化块)
3、匿名内部类中不能存在任何的静态成员变量和静态方法。
(内部类可以直接访问外部类的私有属性,内部类被当成其外部类的成员。
但外部类不能访问内部类的内部属性。内部类相当于外部类的一个成员,静态内部类是静态成员,普通内部类只是普通成员。
静态成员编译时需要被加载,普通内部类作为普通成员不会被加载,静态成员会被加载)
4、匿名内部类为局部内部类,所以局部内部类的所有限制同样对匿名内部类生效。
5、匿名内部类不能是抽象的,它必须要实现继承的类或者实现的接口的所有抽象方法。
参考:https://blog.csdn.net/liu_shi_jun/article/details/74932666