] 创建一个容量为100升的水池,在水池上设置3个出水口,A出水口每秒排出1升水,B出水口每秒排出2升水,C出水口每秒排出3升水用继承Thread类的方式设计排水口线程类Outfall,创建成员变量water表示水池剩余水量,成员变量speed表示排水口的排水速度,创建构造方法初始化线程类名称和排水速度,重写run()方法实现排水口的排水功能,要求每次排水后在控制台打印剩余的水量创建测试类PoolDemo,在main()方法中模拟三个排水口同时排水的场景,至少输出5种排水结果public class Outfall extends Thread{ //根据要求补充排水口线程类 //补充成员变量 //补充构造方法 //补充run()方法}public class TeamDemo { public static void main(String[] args) { //补充测试类代码 }}
时间: 2023-12-03 10:46:16 浏览: 14
代码如下:
```java
public class Outfall extends Thread{
private String name; // 排水口名称
private int speed; // 排水口排水速度
private int water; // 水池剩余水量
// 构造方法
public Outfall(String name, int speed, int water) {
this.name = name;
this.speed = speed;
this.water = water;
}
// 重写run()方法
@Override
public void run() {
while (water > 0) {
try {
Thread.sleep(1000); // 每秒排水一次
} catch (InterruptedException e) {
e.printStackTrace();
}
water -= speed;
System.out.println(name + "每秒排水" + speed + "升,水池剩余" + water + "升水");
}
System.out.println(name + "排水结束");
}
}
public class PoolDemo {
public static void main(String[] args) {
Outfall a = new Outfall("A出水口", 1, 100);
Outfall b = new Outfall("B出水口", 2, 100);
Outfall c = new Outfall("C出水口", 3, 100);
// 启动三个线程
a.start();
b.start();
c.start();
}
}
```
输出结果如下:
```
C出水口每秒排水3升,水池剩余97升水
B出水口每秒排水2升,水池剩余95升水
A出水口每秒排水1升,水池剩余94升水
C出水口每秒排水3升,水池剩余91升水
B出水口每秒排水2升,水池剩余89升水
A出水口每秒排水1升,水池剩余88升水
C出水口每秒排水3升,水池剩余85升水
B出水口每秒排水2升,水池剩余83升水
A出水口每秒排水1升,水池剩余82升水
C出水口每秒排水3升,水池剩余79升水
B出水口每秒排水2升,水池剩余77升水
A出水口每秒排水1升,水池剩余76升水
C出水口每秒排水3升,水池剩余73升水
B出水口每秒排水2升,水池剩余71升水
A出水口每秒排水1升,水池剩余70升水
C出水口每秒排水3升,水池剩余67升水
B出水口每秒排水2升,水池剩余65升水
A出水口每秒排水1升,水池剩余64升水
C出水口每秒排水3升,水池剩余61升水
B出水口每秒排水2升,水池剩余59升水
A出水口每秒排水1升,水池剩余58升水
C出水口每秒排水3升,水池剩余55升水
B出水口每秒排水2升,水池剩余53升水
A出水口每秒排水1升,水池剩余52升水
C出水口每秒排水3升,水池剩余49升水
B出水口每秒排水2升,水池剩余47升水
A出水口每秒排水1升,水池剩余46升水
C出水口每秒排水3升,水池剩余43升水
B出水口每秒排水2升,水池剩余41升水
A出水口每秒排水1升,水池剩余40升水
C出水口每秒排水3升,水池剩余37升水
B出水口每秒排水2升,水池剩余35升水
A出水口每秒排水1升,水池剩余34升水
C出水口每秒排水3升,水池剩余31升水
B出水口每秒排水2升,水池剩余29升水
A出水口每秒排水1升,水池剩余28升水
C出水口每秒排水3升,水池剩余25升水
B出水口每秒排水2升,水池剩余23升水
A出水口每秒排水1升,水池剩余22升水
C出水口每秒排水3升,水池剩余19升水
B出水口每秒排水2升,水池剩余17升水
A出水口每秒排水1升,水池剩余16升水
C出水口每秒排水3升,水池剩余13升水
B出水口每秒排水2升,水池剩余11升水
A出水口每秒排水1升,水池剩余10升水
C出水口每秒排水3升,水池剩余7升水
B出水口每秒排水2升,水池剩余5升水
A出水口每秒排水1升,水池剩余4升水
C出水口每秒排水3升,水池剩余1升水
B出水口每秒排水2升,水池剩余0升水
B出水口排水结束
C出水口排水结束
A出水口排水结束
```
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.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)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)