你看看这么写如何:
public interface ITest {//定义接口
void method();//接口方法
}
public class Test2 {
public static void main(String[] args) {
//new接口
new ITest() {
//紧跟着实现接口的方法
@Override
public void method() {
System.out.println("ddddddddd");
}
}.method();//用new的对象再调用匿名对象所实现的方法
}
}
其实在 多线程这里也使用匿名内部类了
new Thread(new Runnable(){
@Override
public void run(){
System.out.println("ddd")
}
}).start();
至少我是这么理解的,匿名,也就是没有名称,也就是new的对象是没有名称的,new对象后跟{},{}里面是方法的具体实现,然后用new的对象再紧跟着调用所实现的方法。应该就是这么个流程吧。
你认为这么理解如何。。 |