Java 线程错误代码分析及修正:SleepyCounter 示例
这段代码有几个问题:
- Runnable的拼写错误:应该是'Runnable'而不是'Runnnable'。
- Thread的构造函数参数错误:应该传入一个Runnable对象作为参数,而不是直接传入一个Runnable对象。
- Thread.sleep()的参数错误:Thread.sleep()方法的参数应该是毫秒级别的时间,而不是一个小数。
- 线程的命名冲突:SleepyCounter这个变量名与Thread的构造函数重名,会导致命名冲突。
修正后的代码如下:
public class SleepyCounter {
public static void main(String[] args) {
Thread sleepyCounter = new Thread(new Runnable() {
public void run() {
for (int i = 10; i <= 500; i++) {
System.out.println(i);
}
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
});
sleepyCounter.start();
}
}
原文地址: https://www.cveoy.top/t/topic/pjbM 著作权归作者所有。请勿转载和采集!