用Java定义一个三角形类Triangle,要求提供3条边长信息,以及求周长、求面积等行为。然后再定义一个测试类TriangleTest,作为主程序来测试Triangle类。一些要求如下: (1)边长数据类型为普通整型即可,不能为负数
时间: 2024-03-02 13:54:15 浏览: 105
triangle_matlab重载函数_triangle函数_三角形周长、面积计算_
5星 · 资源好评率100%
好的,这是一个Java编程方面的问题。我来帮您解答。
首先,您需要定义一个Triangle类,如下所示:
```java
public class Triangle {
private int a;
private int b;
private int c;
public Triangle(int a, int b, int c) {
if (a > 0 && b > 0 && c > 0) {
this.a = a;
this.b = b;
this.c = c;
} else {
System.out.println("Error: The length of sides must be greater than zero!");
System.exit(0);
}
}
public int getPerimeter() {
return a + b + c;
}
public double getArea() {
double p = (a + b + c) / 2.0;
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
}
```
在Triangle类中,我们定义了三个私有成员变量a、b、c,表示三角形的三条边长。在Triangle类的构造方法中,我们判断了三条边长是否大于0,如果不是则输出错误信息并终止程序。
接下来,我们提供了两个公共方法,分别是getPerimeter和getArea。getPerimeter方法用于计算并返回三角形的周长;getArea方法用于使用海伦公式计算并返回三角形的面积。
然后,我们需要编写一个测试类TriangleTest,如下所示:
```java
public class TriangleTest {
public static void main(String[] args) {
Triangle t1 = new Triangle(3, 4, 5);
System.out.println("Triangle 1:");
System.out.println("Perimeter: " + t1.getPerimeter());
System.out.println("Area: " + t1.getArea());
Triangle t2 = new Triangle(1, 2, -3);
System.out.println("Triangle 2:");
System.out.println("Perimeter: " + t2.getPerimeter());
System.out.println("Area: " + t2.getArea());
}
}
```
在TriangleTest类中,我们创建了两个Triangle对象t1和t2,并分别传入了不同的三条边长。然后,我们使用Triangle对象的方法来获取三角形的信息,并将结果打印到控制台上。
运行TriangleTest类,输出结果如下:
```
Triangle 1:
Perimeter: 12
Area: 6.0
Error: The length of sides must be greater than zero!
```
可以看到,Triangle对象能够正确地计算三角形的周长和面积,并且能够正确地判断三条边长是否大于0。如果边长小于等于0,则会输出错误信息并终止程序。
阅读全文