用java,编写一个代表三角形的类,其中3条边为三角形的属性,并封装有求三角形的面积和周长的方法。分别利用3条边为3、4、5和7、8、9的两个三角形进行测试。
时间: 2024-10-18 11:19:06 浏览: 37
用类的思想求三角形的周长与面积
5星 · 资源好评率100%
在Java中,你可以创建一个名为Triangle的类,用于表示三角形,并包含三条边作为属性。这里是一个简单的实现:
```java
public class Triangle {
private double sideA;
private double sideB;
private double sideC;
// 构造函数初始化边长
public Triangle(double a, double b, double c) {
if (a + b > c && a + c > b && b + c > a) { // 验证是否构成有效的三角形
sideA = a;
sideB = b;
sideC = c;
} else {
throw new IllegalArgumentException("Invalid triangle sides");
}
}
// 计算周长的方法
public double perimeter() {
return sideA + sideB + sideC;
}
// 求面积的方法,可以使用海伦公式
public double area() {
double semiPerimeter = perimeter() / 2; // 半周长
double area = Math.sqrt(semiPerimeter * (semiPerimeter - sideA) * (semiPerimeter - sideB) * (semiPerimeter - sideC));
return area;
}
// 测试方法,使用给定的边长
public static void testTriangles() {
Triangle triangle1 = new Triangle(3, 4, 5);
System.out.println("Triangle with sides 3, 4, and 5:");
System.out.printf("Area: %.2f\n", triangle1.area());
System.out.println("Perimeter: %.2f\n", triangle1.perimeter());
Triangle triangle2 = new Triangle(7, 8, 9);
System.out.println("\nTriangle with sides 7, 8, and 9:");
System.out.printf("Area: %.2f\n", triangle2.area());
System.out.println("Perimeter: %.2f\n", triangle2.perimeter());
}
// 主方法,供测试用
public static void main(String[] args) {
testTriangles();
}
}
```
当你运行`testTriangles()`方法时,它会计算并打印出两个三角形的面积和周长。
阅读全文