java 如何封装线程
封装线程的方法
在Java中,线程可以通过继承Thread类或实现Runnable接口来封装。以下是两种常见的方法:
继承Thread类
创建一个类并继承Thread,重写run()方法定义线程的执行逻辑。启动线程时调用start()方法。
class MyThread extends Thread {
@Override
public void run() {
System.out.println("Thread running by extending Thread class");
}
}
// 使用方式
MyThread thread = new MyThread();
thread.start();
实现Runnable接口
创建一个类实现Runnable接口,实现run()方法。将Runnable实例传递给Thread构造函数后启动线程。
class MyRunnable implements Runnable {
@Override
public void run() {
System.out.println("Thread running by implementing Runnable");
}
}
// 使用方式
Thread thread = new Thread(new MyRunnable());
thread.start();
使用Lambda表达式(Java 8+)
对于简单的线程任务,可以直接使用Lambda表达式简化代码。
Thread thread = new Thread(() -> {
System.out.println("Thread running via Lambda");
});
thread.start();
线程池管理
通过ExecutorService管理线程,避免频繁创建销毁线程的开销。

ExecutorService executor = Executors.newFixedThreadPool(5);
executor.submit(() -> {
System.out.println("Task executed by thread pool");
});
executor.shutdown();
注意事项
- 线程安全:共享资源需使用同步机制(如
synchronized或Lock)。 - 异常处理:线程内未捕获的异常可能导致线程终止,建议在
run()中处理异常。 - 资源释放:确保线程结束时释放持有的资源(如数据库连接)。






