java如何创建thread
创建Thread的两种方法
在Java中创建线程有两种主要方法:继承Thread类和实现Runnable接口。
继承Thread类
通过继承Thread类并重写run()方法可以创建线程。run()方法包含线程执行的代码逻辑。
class MyThread extends Thread {
public void run() {
System.out.println("Thread is running");
}
}
// 创建并启动线程
MyThread thread = new MyThread();
thread.start();
实现Runnable接口
实现Runnable接口是更常用的方法,因为Java不支持多重继承。实现Runnable后可以传递给Thread构造函数。
class MyRunnable implements Runnable {
public void run() {
System.out.println("Thread is running");
}
}
// 创建并启动线程
Thread thread = new Thread(new MyRunnable());
thread.start();
使用匿名内部类
对于简单的线程任务,可以使用匿名内部类简化代码。

// 继承Thread的匿名类
new Thread() {
public void run() {
System.out.println("Thread running");
}
}.start();
// 实现Runnable的匿名类
new Thread(new Runnable() {
public void run() {
System.out.println("Thread running");
}
}).start();
使用Lambda表达式(Java 8+)
Java 8引入的Lambda表达式可以进一步简化Runnable实现。
new Thread(() -> {
System.out.println("Thread running with lambda");
}).start();
线程的命名
可以为线程设置名称以便于调试和识别。

Thread thread = new Thread(() -> {
System.out.println(Thread.currentThread().getName() + " is running");
}, "MyThread");
thread.start();
线程优先级
线程优先级范围从1(MIN_PRIORITY)到10(MAX_PRIORITY),默认是5(NORM_PRIORITY)。
thread.setPriority(Thread.MAX_PRIORITY);
注意事项
直接调用run()方法不会启动新线程,只是普通方法调用。必须使用start()方法启动线程。
多个线程共享相同Runnable实例时,需要注意线程安全问题,适当使用同步机制。
创建过多线程会导致系统资源耗尽,应考虑使用线程池管理线程生命周期。






