当一个接口的实现(或者一个父类的子类)只被某处临时使用一次时,这种情况就可以使用匿名内部类
匿名内部类的格式:
接口名称 对象名 = new 接口名称(){
/*覆盖重新所有抽象方法*/
}; //这儿有个分号别忘了哦
/*接口*/ public interface myInterface { public abstract void method(); }
//正常的实现 public class myImpl implements myInterface{ @Override public void method() { System.out.println("重写!"); } }
public class DemoMain { public static void main(String[] args) { myInterface A = new myInterface(){ @Override public void method(){ System.out.println("haha"); } }; A.method();//调用一下 } }
运行结果为
haha
原文:https://www.cnblogs.com/thesmj/p/13191947.html