5. 自定义异常 要求:乘坐公交车刷卡操作。定义公交卡类,若刷卡金额大于余额,则作为异常处理。 步骤: (1)产生异常的条件是余额少于刷卡金额,是否抛出异常要先对该条件做判断,确定产生异常的方法,在刷卡方法中产生异常。 (2)处理异常安排在调用刷卡方法中,刷卡方法拋出异常,由上一级调用方法捕获并处理。
时间: 2024-02-03 20:15:12 浏览: 106
自定义异常类步骤
下面是一个示例代码,实现了公交卡类和刷卡方法,并且定义了一个自定义异常类:
```python
class NotEnoughBalanceError(Exception):
pass
class BusCard:
def __init__(self, balance):
self.balance = balance
def swipe_card(self, amount):
if amount > self.balance:
raise NotEnoughBalanceError("余额不足,请充值!")
self.balance -= amount
print("刷卡成功,余额为:", self.balance)
# 使用示例
card = BusCard(20)
try:
card.swipe_card(30)
except NotEnoughBalanceError as e:
print(e)
```
在上面的代码中,我们首先定义了一个自定义异常类 `NotEnoughBalanceError`。然后在公交卡类 `BusCard` 中,我们定义了刷卡方法 `swipe_card`,当刷卡金额大于余额时,我们就抛出自定义的异常。
在使用公交卡时,我们可以先创建一个公交卡对象,然后调用 `swipe_card` 方法进行刷卡操作。由于刷卡可能会产生异常,我们使用 `try...except` 语句来捕获这个异常并进行处理。在这个例子中,我们只是简单地打印了异常信息。
阅读全文