假设A是一个接口,那么,Java允许直接用接口名和一个类体创建一个匿名对象,此类体被认为是实现了A接口的类去掉类声明后的类体,称做匿名类。下面的代码就是用是实现了A接口的匿名类创建对象。
interface A{
public void doSomething();
}
public class B{
public void fun(A a){
System.out.println("B类的fun函数");
a.doSomething();
}
}
public class Test{
public static void main(String[] args){
B b=new B();
b.fun(new A(){
public void doSomething(){
System.out.println("接口的匿名内部类");
}
});
}
}