主题:未调用 run 方法

Nul*_*ter 3 java multithreading

我是java新手。有人可以帮助我为什么它不调用 Run 方法。提前致谢。

package com.blt;

public class ThreadExample implements Runnable {
    public static void main(String args[])
    {       

        System.out.println("A");
        Thread T=new Thread();
        System.out.println("B");
        T.setName("Hello");
        System.out.println("C");
        T.start();
        System.out.println("D");
    }

public void run()
{
    System.out.println("Inside run");

}
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 6

您需要将 的实例传递ThreadExampleThread构造函数,以告诉新线程要运行什么:

Thread t = new Thread(new ThreadExample());
t.start();
Run Code Online (Sandbox Code Playgroud)

(不幸的是,这个Thread类在很多方面设计得很糟糕。如果它本身没有方法,但确实强制你将 a 传递给构造函数,那会更有帮助然后run()就会Runnable编译时发现问题-时间。)