在Java中简述创建多线程的两种方式。
时间: 2024-05-07 11:22:40 浏览: 13
在Java中,创建多线程有两种方式:通过继承Thread类或通过实现Runnable接口。
1. 继承Thread类:创建一个新的类并继承Thread类,重写run()方法,该方法包含线程代码。然后创建该类的实例并调用start()方法启动线程。
```java
class MyThread extends Thread {
public void run() {
// 线程代码
}
}
// 创建并启动线程
MyThread myThread = new MyThread();
myThread.start();
```
2. 实现Runnable接口:创建一个实现Runnable接口的类,重写run()方法,该方法包含线程代码。然后创建Thread实例并将该实例传递给Runnable接口的实现类,最后调用start()方法启动线程。
```java
class MyRunnable implements Runnable {
public void run() {
// 线程代码
}
}
// 创建并启动线程
MyRunnable myRunnable = new MyRunnable();
Thread thread = new Thread(myRunnable);
thread.start();
```
相关问题
简述Java中实现多线程的两种方式
Java中实现多线程的两种方式如下:
1. 继承Thread类:创建一个类继承Thread类,并且重写Thread类中的run()方法,run()方法中实现线程的执行逻辑。然后创建该类的对象,调用start()方法启动线程。
2. 实现Runnable接口:创建一个类实现Runnable接口,并且重写Runnable接口中的run()方法,run()方法中实现线程的执行逻辑。然后创建该类的对象,将该对象作为参数传递给Thread类的构造函数中创建Thread对象。最后调用Thread对象的start()方法启动线程。
这两种方式都能够创建多线程,但是实现Runnable接口的方式更常用,因为Java中是单继承的,如果一个类已经继承了其他类,就不能再继承Thread类了。而实现Runnable接口不会影响类的继承关系,更加灵活。同时,使用Runnable接口还可以实现资源共享,多个线程可以共享同一个Runnable对象,而使用继承Thread类则不行。
简述创建多线程的两种方式
创建多线程有两种方式:继承Thread类和实现Runnable接口。
1. 继承Thread类:继承Thread类并重写run()方法,该方法是线程的执行体。然后创建Thread类的实例对象,并调用start()方法启动线程。例如:
```java
class MyThread extends Thread {
public void run() {
// 线程执行体
}
}
public class Main {
public static void main(String[] args) {
MyThread thread = new MyThread();
thread.start(); // 启动线程
}
}
```
2. 实现Runnable接口:实现Runnable接口并实现run()方法,创建Thread类的实例对象并将其传入Runnable接口的实现类,最后调用start()方法启动线程。例如:
```java
class MyRunnable implements Runnable {
public void run() {
// 线程执行体
}
}
public class Main {
public static void main(String[] args) {
MyRunnable runnable = new MyRunnable();
Thread thread = new Thread(runnable);
thread.start(); // 启动线程
}
}
```
这两种方式都可以创建多线程,但是实现Runnable接口的方式更加灵活,因为Java只支持单继承,而实现Runnable接口可以避免这个限制。