3.某高速公路限速120公里/小时,编写程序并使用异常处理超速。 (1)定义超速异常类OverSpeedException抛出超速提示信息。 (2)定义Monitor类,定义方法measureSpeed(double speed),如果速度speed超过120,该方法将抛出OverSpeedException异常。 (3)定义测试类ExcepitonTest,在main方法中随机产生汽车行驶速度speed,并调用measureSpeed(double speed)方法测试是否超速。
时间: 2024-02-01 17:16:01 浏览: 29
下面是实现该程序的Python代码:
```python
import random
# 定义超速异常类
class OverSpeedException(Exception):
def __init__(self, speed):
self.speed = speed
def __str__(self):
return "超速了,当前时速为{}公里/小时".format(self.speed)
# 定义Monitor类
class Monitor:
def measureSpeed(self, speed):
if speed > 120:
raise OverSpeedException(speed)
else:
print("当前时速为{}公里/小时,正常行驶".format(speed))
# 定义测试类
class ExceptionTest:
def test(self):
monitor = Monitor()
try:
# 随机生成汽车行驶速度
speed = random.randint(80, 160)
monitor.measureSpeed(speed)
except OverSpeedException as e:
print(e)
# 测试程序
test = ExceptionTest()
test.test()
```
程序运行时,会随机生成一个汽车行驶速度,然后调用Monitor类的measureSpeed方法进行测速。如果速度超过了限速,就会抛出OverSpeedException异常,并输出异常信息。如果速度没有超过限速,则输出正常行驶信息。
相关推荐
![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)
![](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)