同时使用两种方法创建线程疑问
来源:3-2 使用两种方法创建

水桶一号
2019-09-16
public static void main(String[] args){
new Thread(new Runnable() {
@Override
public void run() {
System.out.println(“我来自Runnable”);
}
}){
@Override
public void run() {
System.out.println(“我来自Thread”);
}
}.start();
}
以上代码中的new Runnable() {
@Override
public void run() {
System.out.println(“我来自Runnable”);
}
},Runnable是一个接口,在此处为什么可以new?难道是此处java自动通过动态代理生成实例了吗?
写回答
1回答
-
这是Java的匿名内部类写法。实质上是使用匿名接口来实现匿名内部类的, 匿名接口这样写是会自动生成一个实现了该接口的匿名类。
152019-11-04
相似问题