当前位置: 代码迷 >> J2SE >> 为什么这段代码能正常运行?该如何解决
  详细解决方案

为什么这段代码能正常运行?该如何解决

热度:138   发布时间:2016-04-24 01:43:44.0
为什么这段代码能正常运行?
package test;

abstract class Base {
public Base(int i){
System.out.println("base construction, i="+i);
}
public abstract void f();
}
public class AnonymousConstruction{
public static Base getBase(int i){
System.out.print("anonymouys class");//抽象类不是不能被实例化的吗?为什么能这么实例化?
return new Base(i){
@Override
public void f() {

}

};
}

public static void main(String [] args){
Base base = getBase(47);
base.f();
}
}



------解决方案--------------------
Java code
new Base(i){@Overridepublic void f() {}};
  相关解决方案