** 匿名内部类
* 它是局部内部类的简化格式
* 前提: 需要存在一个类或者接口 ; 这个类可以是抽象类, 也可以是非抽象类 ;
* 格式:
new 类名/接口名() {
方法重写 ;
} ;
* 本质: 就是一个继承某一个类或者实现某一个接口的子类对象
public class aa { public static void main(String[] args) { Outer o = new Outer(); o.method(); } } /* A:匿名内部类 就是内部类的简化写法。 B:前提:存在一个类或者接口 这里的类可以是具体类也可以是抽象类。 C:格式:new 类名或者接口名(){ 重写方法; } D:本质是什么呢? 是一个继承了该类或者实现了该接口的子类匿名对象。 E:案例演示 按照要求来一个匿名内部类 */ interface Inter { public void print(); } class Outer { class Inner implements Inter { public void print() { System.out.println("print"); } } public void method() { // Inner i = new Inner(); // i.print(); // new Inner().print(); // Inter i = new Inner(); //父类引用指向子类对象 new Inter() { // 实现Inter接口 public void print() { // 重写抽象方法 System.out.println("print"); } }.print(); } }