java种创建线程有3种方式:
(1)继承Thread类,重写Thread类的run方法。
(2)实现Runnable接口,重写Runnable接口的run方法。
(3)实现Callable接口,重写Callable接口的call方法。
示例代码如下:
public class ThreadTest1 {
public static void main(String[] args) throws Exception {
//用继承Thread类的方式实现线程
Thread1 thread1 = new Thread1();
thread1.start();
//用实现Runnable接口的方式实现线程
Runnable2 runnable2 = new Runnable2();
Thread thread2 = new Thread(runnable2);
thread2.start();
//用实现Callable接口的方式实现线程,这个方式需要声明异常
Callable3 callable3 = new Callable3();
FutureTask<String> futureTask = new FutureTask<String>(callable3);
Thread thread3 = new Thread(futureTask);
thread3.start();
System.out.println(futureTask.get());
}
}
class Thread1 extends Thread {
@Override
public void run() {
System.out.println("thread1");
}
}
class Runnable2 implements Runnable {
@Override
public void run() {
System.out.println("thread2");
}
}
class Callable3 implements Callable<String> {
@Override
public String call() throws Exception {
System.out.println("thread3");
return "callable3Return";
}
}
执行结果如下:
thread1
thread2
thread3
callable3Return