在java中这是有效的
new Thread(new Runnable()
{
public void run()
{
for(int i=0;i<5;i++)
System.out.println("From anonymous:"+i);
}
}
).start();
但这不是:
Thread t=new Thread(new Runnable()
{
public void run()
{
for(int i=0;i<5;i++)
System.out.println("From anonymous:"+i);
}
}
).start();
我可以用匿名课来实现吗?如果是,那么如何
答案 0 :(得分:8)
您的代码无效,因为它希望将start()
方法的结果分配给变量t
。你可以这样做:
Thread t=new Thread(new Runnable()
{
public void run()
{
for(int i=0;i<5;i++)
System.out.println("From anonymous:"+i);
}
}
);
t.start();
答案 1 :(得分:3)
此外,在这种情况下,您不需要使用Runnable接口,因为它是由Thread类实现的。
new Thread() {
@Override
public void run() {
for(int i=0;i<5;i++)
System.out.println("From anonymous:"+i);
}
}.start();
答案 2 :(得分:1)
这里需要注意的一点是Thread的start方法返回void。这就是您无法将其分配给变量的原因。