java中下面哪个能创建并启动线程()
public class MyRunnable implements Runnable {
public void run() {
//some code here
}
}
正确答案: C
-
A new Runnable(MyRunnable).start()
-
B new Thread(MyRunnable).run()
-
C new Thread(new MyRunnable()).start()
-
D new MyRunnable().start()
首先:创建并启动线程的过程为:定义线程—》实例化线程—》启动线程。
- 一 、定义线程:
- 1、扩展java.lang.Thread类。
- 2、实现java.lang.Runnable接口。
- 二、实例化线程:
- 1、如果是扩展java.lang.Thread类的线程,则直接new即可。
- 2、如果是实现了java.lang.Runnable接口的类,则用Thread的构造方法:
Thread(Runnable target)
Thread(Runnable target, String name)
Thread(ThreadGroup group, Runnable target)
Thread(ThreadGroup group, Runnable target, String name)
Thread(ThreadGroup group, Runnable target, String name, long stackSize)
所以A、D的实例化线程错误。
- 三、启动线程: 在线程的Thread对象上调用start()方法,而不是run()或者别的方法。
所以B的启动线程方法错误。