设计一个名为triangle的类来扩展geometricobject类,该类包含:三个名字为side1,side2,side3的浮点数据域表示三角形的三个边一个构造方法构造默认一个三角形,执行三边分别
时间: 2023-04-28 13:04:55 浏览: 488
为1.0的构造方法,一个计算周长的方法,一个计算面积的方法,以及相应的访问器和修改器方法。
设计思路:
1. 继承GeometricObject类,Triangle类需要继承GeometricObject类的属性和方法。
2. 定义三个浮点型数据域side1、side2、side3,表示三角形的三个边。
3. 编写构造方法,可以构造默认一个三角形,也可以执行三边分别为1.0的构造方法。
4. 编写计算周长的方法,使用公式:周长 = side1 + side2 + side3。
5. 编写计算面积的方法,使用海伦公式:面积 = √[s(s-side1)(s-side2)(s-side3)],其中s = (side1 + side2 + side3) / 2。
6. 编写相应的访问器和修改器方法,可以获取和修改三个边的值。
代码实现如下:
```
public class Triangle extends GeometricObject {
private double side1;
private double side2;
private double side3;
public Triangle() {
side1 = 1.0;
side2 = 1.0;
side3 = 1.0;
}
public Triangle(double side1, double side2, double side3) {
this.side1 = side1;
this.side2 = side2;
this.side3 = side3;
}
public double getSide1() {
return side1;
}
public void setSide1(double side1) {
this.side1 = side1;
}
public double getSide2() {
return side2;
}
public void setSide2(double side2) {
this.side2 = side2;
}
public double getSide3() {
return side3;
}
public void setSide3(double side3) {
this.side3 = side3;
}
public double getPerimeter() {
return side1 + side2 + side3;
}
public double getArea() {
double s = (side1 + side2 + side3) / 2;
return Math.sqrt(s * (s - side1) * (s - side2) * (s - side3));
}
}
```
阅读全文