温馨提示:这篇文章已超过239天没有更新,请注意相关的内容是否还可用!
Java中多线程的实现方式有两种:继承Thread类和实现Runnable接口。下面分别介绍这两种方式。
1、继承Thread类:通过创建Thread的子类,并重写run()方法来实现多线程。run()方法中定义了线程要执行的任务代码。
示例代码如下:
class MyThread extends Thread {
public void run() {
// 线程要执行的任务代码
for (int i = 0; i < 5; i++) {
System.out.println("Thread " + Thread.currentThread().getId() + " is running");
}
}
}
public class Main {
public static void main(String[] args) {
MyThread thread1 = new MyThread();
MyThread thread2 = new MyThread();
thread1.start();
thread2.start();
}
}
2、实现Runnable接口:通过创建实现了Runnable接口的类的对象,并将其作为参数传递给Thread类的构造方法来实现多线程。实现Runnable接口的类需要重写run()方法。
示例代码如下:
class MyRunnable implements Runnable {
public void run() {
// 线程要执行的任务代码
for (int i = 0; i < 5; i++) {
System.out.println("Thread " + Thread.currentThread().getId() + " is running");
}
}
}
public class Main {
public static void main(String[] args) {
Thread thread1 = new Thread(new MyRunnable());
Thread thread2 = new Thread(new MyRunnable());
thread1.start();
thread2.start();
}
}
这两种方式的区别在于,继承Thread类的方式需要直接重写run()方法,而实现Runnable接口的方式需要在新建Thread对象时传入实现了Runnable接口的对象。实际上,实现Runnable接口的方式更常用,因为Java不支持多重继承,而通过实现Runnable接口,可以避免继承Thread类带来的限制。
以上是Java多线程的两种实现方式的讲解和示例代码。