1.继承Thread
public class Thread01 extends Thread { @Override public void run() { System.out.println("继承Thread"); } public static void main(String[] args) { Thread01 thread01 = new Thread01(); thread01.start(); } }
2.实现Runnable
public class Runnable01 implements Runnable {
@Override
public void run() {
System.out.println("实现Runnable");
}
public static void main(String[] args) {
Thread thread = new Thread(new Runnable01());
thread.start();
}
}
3.实现Callable
public class Callable01 implements Callable<String> {
@Override
public String call() throws Exception {
return "实现 Callable";
}
public static void main(String[] args) throws ExecutionException, InterruptedException {
FutureTask task = new FutureTask(new Callable01());
new Thread(task).start();
System.out.printf("内容 "+task.get());
}
}
源码截图



线程的多种状态
public enum State { /** * 初始状态,尚未启动 */ NEW, /** * 可运行状态,可随时运行 */ RUNNABLE, /** * 线程阻塞, */ BLOCKED, /** * 等待状态 */ WAITING, /** * 指定时间等待*/ TIMED_WAITING, /** * 线程已完成执行 */ TERMINATED; }
xxxx
浙公网安备 33010602011771号