设计一个名为Triangle的三角形类来实现Femoetric类,该类包含以下成员。 3个名为side1、side2、side3的double类型的属性,表示三角形的3条边 一个无参数构造方法,用于创建三角形 一个能创建指定side1、side2和side3的矩形的构造方法 Side1、side2、side3的getter()/setter()方法 一个getArea()方法,其返回三角形的面积 一个getPerimeter()方法,其返回三角形的周长 一个isTriangle()方法,用来判断3条边是否能构成三角形 一个toString()方法,其返回三角形的字符串描述
时间: 2024-02-05 21:14:25 浏览: 107
C++程序设计(类的解释)
下面是实现了上述要求的Triangle类的代码:
```java
public class Triangle extends Geometric {
private double side1;
private double side2;
private double side3;
public Triangle() {
this.side1 = 1.0;
this.side2 = 1.0;
this.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 getArea() {
double p = (side1 + side2 + side3) / 2.0;
return Math.sqrt(p * (p - side1) * (p - side2) * (p - side3));
}
public double getPerimeter() {
return side1 + side2 + side3;
}
public boolean isTriangle() {
return (side1 + side2 > side3) && (side1 + side3 > side2) && (side2 + side3 > side1);
}
@Override
public String toString() {
return "Triangle: side1 = " + side1 + ", side2 = " + side2 + ", side3 = " + side3;
}
}
```
这里我们使用了一个Geometric类来作为Triangle类的父类,以便继承一些常用的几何方法。其中,getArea()方法使用了海伦公式来计算三角形面积,isTriangle()方法用来判断三条边是否能构成三角形。toString()方法用来返回Triangle对象的字符串描述。
阅读全文