start与run

  • 执行start方法,是用来启动线程的,此时线程处于就绪状态,获得调度后运行run方法。run方法执行结束,线程就结束。
  • 执行run方法,相对于普通方法调用,在主线程调用。程序是顺序执行的,执行完才会执行下面的程序。

示例

public class StartDemo extends Thread{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName());
    }

    public static void main(String[] args) {
        StartDemo startDemo = new StartDemo();
        startDemo.setName("startDemo");
        startDemo.run();
        startDemo.start();
    }
}

运行结果如下:
clipboard.png
可见,执行run的时候,run方法是main这个线程执行的,执行start的时候,run方法是startDemo线程执行的。


大军
847 声望183 粉丝

学而不思则罔,思而不学则殆