1、自定义一个类Demo,使其实现Runnable接口;在Demo类中重写run()方法,在方法内编写一个for循环,循环体内打印:线程名称+循环次数;编写测试类Example01,在Example01类的main()方法中,创建一个Demo对象,利用Thread的构造方法创建三个线程对象并命名,使用setPriority()方法将其中两个线程的优先级设为最大和最小,最后开启三个线程的start()方法。
时间: 2023-12-10 22:38:32 浏览: 110
thread-use-demo.rar_DEMO
下面是示例代码:
```java
class Demo implements Runnable {
@Override
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println(Thread.currentThread().getName() + ": " + i);
}
}
}
public class Example01 {
public static void main(String[] args) {
Demo demo = new Demo();
Thread t1 = new Thread(demo, "Thread-1");
Thread t2 = new Thread(demo, "Thread-2");
Thread t3 = new Thread(demo, "Thread-3");
t1.setPriority(Thread.MAX_PRIORITY);
t2.setPriority(Thread.MIN_PRIORITY);
t1.start();
t2.start();
t3.start();
}
}
```
输出结果:
```
Thread-1: 1
Thread-2: 1
Thread-1: 2
Thread-2: 2
Thread-1: 3
Thread-2: 3
Thread-1: 4
Thread-2: 4
Thread-1: 5
Thread-2: 5
Thread-3: 1
Thread-3: 2
Thread-3: 3
Thread-3: 4
Thread-3: 5
```
解释:在Demo类中重写run()方法,该方法是线程要执行的任务;在Example01类的main()方法中,创建一个Demo对象,并使用Thread类的构造方法创建了三个线程对象,并分别命名为"Thread-1"、"Thread-2"、"Thread-3";使用setPriority()方法将其中两个线程的优先级设为最大和最小,最后开启三个线程的start()方法,使三个线程同时执行任务。输出结果表明三个线程均执行了任务,但是"Thread-1"和"Thread-2"的输出顺序是不确定的,因为优先级高并不一定意味着一定先执行完。
阅读全文