1.成员内部类
1.特点
1.只能定义非静态属性和方法
2.可以访问外部类的成员,私有的可以,静态的也可以
2.语法:内部类 对象名 = new 外部类().new 内部类();
2.静态内部类
1.特点
1.可以定义属性和方法,也能定义静态属性和方法
2.只能访问静态外部类的静态属性和方法
2.语法:内部类 对象名 = new 外部类.内部类();
<font color="#e74f4c">4.匿名内部类(常用):本身就是一个对象</font>
1.语法:new 父类(){ 重写父类的方法}
2.特点:匿名内部类的父类一般都是抽象类或者是接口
3.应用场景:
1.方法的参数是接口,且这个接口只需要实现一次
2.这个接口的实现每一次都不相同