构造三角形,对无效的三角形进行异常抛出
题目:
定义一个三角形类,包含一个构造方法和一个求面积的方法,求面积的方法对不能构成三角形的
数据将抛出自定义的无效三角形异常
代码:
class IllegalArea extends Exception{
IllegalArea(){
super("所输入的三角形构造失败!");
}
}
class Triangle{
double a;
double b;
double c;
Triangle(double a,double b,double c){
this.a=a;
this.b=b;
this.c=c;
}
public double getArea() throws IllegalArea{ //利用海伦公式求面积
double p;
double s;
p=(a+b+c)/2;
s=Math.sqrt(p*(p-a)*(p-b)*(p-c));
if(p*(p-a)*(p-b)*(p-c)<=0) {
throw new IllegalArea();
}
return s;
}
}
public class Test6_4 {
public static void main(String[] args) throws IllegalArea {
Triangle triangle=new Triangle(3,4,9);
System.out.println("三角形面积:"+triangle.getArea());
}
}```