java定义了一个接口PayAble,包含计算电话话费的方法pay()。在手机类定义中增加计算话费异常,如果话费小于0则抛出异常。 要点提示:1) 自定义一个异常类,表示话费小于0的异常;2) 计算话费时如果小于0则抛出异常,在测试类中处理异常。
时间: 2023-06-19 22:05:29 浏览: 526
手机话费计费系统Java
5星 · 资源好评率100%
好的,让我来给你写一下:
首先是定义PayAble接口并声明计算话费的方法:
```
public interface PayAble {
double pay();
}
```
接着,在手机类中增加计算话费异常:
```
public class MobilePhone implements PayAble {
private double fee;
public MobilePhone(double fee) {
this.fee = fee;
}
public double pay() throws NegativeFeeException {
double result = fee - 10; // 减去10元基础费用
if (result < 0) {
throw new NegativeFeeException("话费小于0异常");
}
return result;
}
}
```
其中,NegativeFeeException是自定义的异常类,表示话费小于0的异常:
```
public class NegativeFeeException extends Exception {
public NegativeFeeException(String message) {
super(message);
}
}
```
最后,在测试类中处理异常:
```
public class Test {
public static void main(String[] args) {
MobilePhone mobilePhone = new MobilePhone(5);
try {
double fee = mobilePhone.pay();
System.out.println("实际需要支付的话费为:" + fee);
} catch (NegativeFeeException e) {
System.out.println(e.getMessage());
}
}
}
```
这样,当话费小于0时,就会抛出NegativeFeeException异常,我们就可以在测试类中进行捕获和处理了。
阅读全文