设计一个异常类,模拟手机销售,如果没有库存抛出异常。
时间: 2024-03-06 20:46:27 浏览: 22
好的,我可以帮您设计一个这样的异常类。可以参考下面的代码:
```python
class OutOfStockError(Exception):
def __init__(self, message):
super().__init__(message)
self.message = message
```
在手机销售的程序中,如果库存不足,可以使用这个异常类来抛出异常,示例如下:
```python
class Phone:
def __init__(self, name, stock):
self.name = name
self.stock = stock
def sell(self, quantity):
if self.stock < quantity:
raise OutOfStockError(f"{self.name}库存不足")
else:
self.stock -= quantity
print(f"已售出{quantity}台{self.name},剩余库存{self.stock}台")
```
使用这个异常类的时候,可以像这样来处理:
```python
iphone = Phone("iPhone 12", 10)
try:
iphone.sell(20)
except OutOfStockError as e:
print(e.message)
```
如果库存不足,就会抛出 OutOfStockError 异常,并且打印出错误信息。