自定义一个类Demo,使其实现Runnable接口。 2)在Demo类中覆写run()方法,在方法内编写一个for循环,循环体内,先执行线程让步的方法yield(),然后输出打印:线程名称+循环次数。 3)编写测试类Example05_5,在Example05_5类的main()方法中,创建一个Demo对象,利用Thread的构造方法创建两个线程对象,并执行线程对象的start()方法,同时编写for循环,循环内打印“main:”+当前循环次数
时间: 2024-03-13 14:43:00 浏览: 25
好的,我理解了你的问题。以下是代码实现:
```java
// Demo类实现Runnable接口
class Demo implements Runnable {
public void run() {
for (int i = 1; i <= 5; i++) {
// 线程让步
Thread.yield();
System.out.println(Thread.currentThread().getName() + ": " + i);
}
}
}
// Example05_5测试类
public class Example05_5 {
public static void main(String[] args) {
Demo demo = new Demo();
Thread thread1 = new Thread(demo);
Thread thread2 = new Thread(demo);
thread1.start();
thread2.start();
for (int i = 1; i <= 5; i++) {
System.out.println("main: " + i);
}
}
}
```
在上面的代码中,我们自定义了一个类Demo,使其实现了Runnable接口,并重写了run()方法,执行了一个for循环并在循环内使用了线程让步方法yield()和输出语句。
在Example05_5测试类中,我们创建了一个Demo对象,利用Thread的构造方法创建了两个线程对象,并分别调用start()方法启动了线程。同时,我们也编写了一个for循环,循环内打印“main:”+当前循环次数。这样,我们就在控制台上看到了线程和主线程交替执行的结果。
希望这个例子可以帮助你理解如何实现Runnable接口和使用线程。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)