其实这个是多线程的 只不过现象不明显而已,在线程启动前,main函数就已经执行完了。
以下是我的测试代码,将主函数加了一个死循环,你看一下结果
package com;
import java.lang.*;
public class Demo {
public static void main(String args[]) {
new TestThread().start();
for (int i = 0; i < 10; i++) {
System.out.println("main 线程在运行");
while(true)
{
}
}
}
}
class TestThread extends Thread {
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("TestThread 在运行");
}
}
}
结果是:
main 线程在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
你在TestThread中加一个构造函数,在里面super一下才行
你写了thread的内建class, 没有调用它的run()啊= =