創建多綫程的四種方式
public class CreateThreadTest {
public static void main(String[] args) throws ExecutionException, InterruptedException {
// runnableDemo runnableDemo1 = new runnableDemo();
// new Thread(runnableDemo1).start();
// ThreadDemo threadDemo1 = new ThreadDemo();
// new Thread(threadDemo1).start();
CallableDemo callableDemo1 = new CallableDemo();
FutureTask futureTask = new FutureTask(callableDemo1);
new Thread(futureTask).start();
int i = futureTask.get();
System.out.println(i);
}
}
//方式一
class runnableDemo implements Runnable{
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println(i);
}
}
}
//方式二
class ThreadDemo extends Thread{
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println(i);
}
}
}
//實現callable接口方式
class CallableDemo implements Callable{
@Override
public Integer call() throws Exception {
int j = 0;
for (int i = 0; i < 10; i++) {
j+=i;
}
return j;
}
}