.2.1 线程的基本用法
在 Android 多线程编程中,线程的基本用法与 Java 多线程编程相似。首先,我们需要定义一个线程,只需新建一个类继承自 Thread,然后重写父类的 run() 方法,并在其中编写耗时逻辑。例如:
```java
class MyThread extends Thread {
@Override
public void run() {
// 处理具体的逻辑
}
}
```
接下来,我们可以通过 new MyThread().start() 的方式启动这个线程,这样 run() 方法中的代码就会在子线程中运行。当然,使用继承的方式耦合性有点高,更多的时候我们都会选择使用实现 Runnable 接口的方式来定义一个线程。例如:
```java
class MyThread implements Runnable {
@Override
public void run() {
// 处理具体的逻辑
}
}
```
如果使用了这种写法,启动线程的方法也需要进行相应的改变。首先创建一个 MyThread 对象,然后将其传入到 Thread 的构造函数中,最后调用 Thread 的 start() 方法。可以看到,Thread 的构造函数接收一个 Runnable 参数,而我们 new 出的 MyThread 正是一个实现了 Runnable 接口的对象,所以可以直接将它传入到 Thread 的构造函数里。接着调用 Thread 的 start() 方法,run() 方法中的代码就会在子线程中运行了。当然,如果你不想专门再定义一个类去实现 Runnable 接口,也可以使用匿名类的方式,这种写法更为常见。例如:
```java
MyThread myThread = new MyThread();
new Thread(myThread).start();
```