package com.mollzz.summary;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
public class ThreadNew {
public static void main(String[] args) throws ExecutionException, InterruptedException {
new MyThread().start();
new Thread(new MyRunnable()).start();
FutureTask<Integer> futureTask=new FutureTask<Integer>(new MyCallable());
new Thread(futureTask).start();
Integer integer = futureTask.get();
System.out.println(integer);
}
}
//1.继承Thread类
class MyThread extends Thread{
@Override
public void run() {
System.out.println("MyThread");
}
}
//2.实现Runnable接口
class MyRunnable implements Runnable{
@Override
public void run() {
System.out.println("MyRunnable");
}
}
//3.实现Callable接口
class MyCallable implements Callable<Integer>{
@Override
public Integer call() throws Exception {
System.out.println("MyCallable");
return 100;
}
}
线程总结
最新推荐文章于 2024-10-10 23:42:47 发布
本文通过实例展示了如何在Java中使用Thread、Runnable和Callable接口实现并发任务,以及使用FutureTask管理和执行这些任务。主要介绍了如何创建自定义线程和任务,并演示了FutureTask的使用。
摘要由CSDN通过智能技术生成