七.编写一个JAVA程序,启动三个线程,三个线程的ID分别是A , B ,C;,每个线程将自己的ID值在屏幕上打 印5遍,打印顺序是ABCABC …
时间: 2024-09-28 17:17:58 浏览: 38
在Java中,我们可以创建一个实现了Runnable接口的类,并重写其中的run()方法,然后创建Thread对象并设置其目标为这个Runnable实例。下面是一个简单的示例,展示了如何启动三个线程按照给定顺序打印它们的ID:
```java
public class PrintThread implements Runnable {
private final String id;
public PrintThread(String id) {
this.id = id;
}
@Override
public void run() {
for (int i = 0; i < 5; i++) {
System.out.println(Thread.currentThread().getName() + ": " + id);
}
}
public static void main(String[] args) {
// 创建三个线程
Thread threadA = new Thread(new PrintThread("A"));
Thread threadB = new Thread(new PrintThread("B"));
Thread threadC = new Thread(new PrintThread("C"));
// 设置打印顺序
threadA.start();
try {
threadA.join(); // 等待线程A完成后再启动线程B
} catch (InterruptedException e) {
e.printStackTrace();
}
threadB.start();
try {
threadB.join(); // 等待线程B完成后再启动线程C
} catch (InterruptedException e) {
e.printStackTrace();
}
threadC.start();
// 为了防止主线程结束前其他线程还没完成,可以添加同步机制或让主线程等待
}
}
```
在这个例子中,线程A先开始运行,打印完5次之后才会让线程B开始,以此类推。由于join()方法会阻塞当前线程直到指定线程执行完毕,所以可以保证打印顺序。
阅读全文