2.1 在main方法中使用Random得到一个1到10的随机数; 2.2 调用子任务类的构造方法创建子任务对象,把随机数传递给构造方法; 2.3 循环创建n的子线程对象,并开启子线程;
时间: 2023-06-14 07:02:44 浏览: 84
以下是一个实现上述要求的代码示例:
```java
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random random = new Random();
int randomNumber = random.nextInt(10) + 1; // 生成1到10的随机数
// 创建子任务对象
SubTask subTask = new SubTask(randomNumber);
// 创建n个子线程并开启
int n = 5; // 假设要创建5个子线程
for (int i = 0; i < n; i++) {
Thread thread = new Thread(subTask);
thread.start();
}
}
}
class SubTask implements Runnable {
private int randomNumber;
public SubTask(int randomNumber) {
this.randomNumber = randomNumber;
}
@Override
public void run() {
// 子线程执行的任务
System.out.println("子线程" + Thread.currentThread().getName() + "的随机数为:" + randomNumber);
}
}
```
在上述代码中,首先使用 `Random` 类生成一个1到10的随机数,然后创建一个 `SubTask` 类的对象,并将随机数作为参数传递给构造方法。接着,使用循环创建n个子线程对象,并将 `SubTask` 对象作为参数传递给它们的构造方法。最后,使用 `start` 方法开启每个子线程,它们会执行 `run` 方法中的任务。
阅读全文