阅读量:0
在Java中,实现多线程主要有两种方法:继承Thread类或实现Runnable接口。以下是两种方法的简单介绍和示例:
方法一:继承Thread类
- 创建一个Thread类的子类,并重写其run()方法,将需要在线程中执行的代码放在run()方法中。
- 创建Thread子类的对象,并调用其start()方法来启动线程。
示例代码:
class MyThread extends Thread { public void run(){ // 线程执行的代码 } } public class Main { public static void main(String[] args) { MyThread t = new MyThread(); t.start(); // 启动线程 } }
方法二:实现Runnable接口
- 创建一个实现Runnable接口的类,并重写其run()方法,将需要在线程中执行的代码放在run()方法中。
- 创建Runnable接口实现类的对象,并将该对象作为参数传递给Thread类的构造函数。
- 创建Thread类的对象,并调用其start()方法来启动线程。
示例代码:
class MyRunnable implements Runnable { public void run(){ // 线程执行的代码 } } public class Main { public static void main(String[] args) { MyRunnable r = new MyRunnable(); Thread t = new Thread(r); // 将Runnable对象作为参数传递给Thread构造函数 t.start(); // 启动线程 } }
需要注意的是,实现Runnable接口的方式比继承Thread类更为灵活,因为Java不支持多重继承,但允许实现多个接口。因此,如果一个类已经继承了其他类,但仍然需要实现多线程,那么实现Runnable接口是一个更好的选择。