自定义一个三条边无法组成三角形的的异常类,手动抛出自定义异常对象,测试并处理该类异常。
时间: 2024-12-15 17:14:33 浏览: 7
自定义异常类通常是为了更好地组织代码结构,特别是当我们想对特定类型的错误进行特殊处理时。对于三角形边长的情况,我们可以创建一个名为`InvalidTriangleException`的自定义异常。下面是一个简单的示例:
```java
public class InvalidTriangleException extends Exception {
public InvalidTriangleException(String message) {
super(message);
}
}
// 主函数
public class Main {
public static void main(String[] args) {
try {
checkTriangle(5, 6, 10); // 测试正常情况
} catch (InvalidTriangleException e) {
System.out.println("发生了 " + e.getClass().getName() + ": " + e.getMessage());
}
try {
checkTriangle(3, 4, 9); // 测试边界情况(边长不满足三角形条件)
throw new InvalidTriangleException("这组边长无法构成三角形"); // 手动抛出异常
} catch (InvalidTriangleException e) {
System.out.println("发生了 " + e.getClass().getName() + ": " + e.getMessage());
}
}
// 检查并可能抛出异常
public static void checkTriangle(double a, double b, double c) throws InvalidTriangleException {
if (a + b <= c || a + c <= b || b + c <= a) {
throw new InvalidTriangleException("边长 " + a + ", " + b + ", " + c + " 无法构成三角形");
}
}
}
```
在这个例子中,`checkTriangle`方法会检查给定的边长是否能构成三角形。如果不能,它会抛出自定义的`InvalidTriangleException`。在主函数中,我们分别测试了正常情况和边界情况,并捕获并处理了异常。
阅读全文