设计一个名为Triangle2D的类,扩展GeometricObject。 这个类包含: 三个名为side1、side2和side3的双数据字段,默认值为1.0到 表示三角形的三条边。 一个无参数构造函数,用于创建一个默认三角形。 一个构造函数,用于创建具有指定的side1、side2和side3的三角形。 所有三个数据字段的访问器方法。 一个名为getArea()的方法,它返回这个三角形的面积。 一个名为getPerimeter()的方法,返回这个三角形的周长。 一个名为toString()的方法,它返回三角形的字符串描述。toString()方法的实现如下: 返回"三角形:side1 = " + side1 + " side2 = " + side2 + " " Side3 = " + Side3; 编写一个java测试程序,提示用户输入三角形的三条边和a 颜色。程序应该用这些边创建一个Triangle2D对象,并设置颜色 使用输入。程序应该显示区域、周长和颜色,要使用class GeometricObject { private String color = "white"; /** Construct a default geometric object */ GeometricObject() {} /** Construct a geometric object with the specified color*/ public GeometricObject(String color) { this.color = color; } /** Return color */ public String getColor() { return color; } /** Set a new color */ public void setColor(String color) { this.color = color; } }
时间: 2024-03-10 19:47:16 浏览: 114
下面是Triangle2D类的实现:
```java
public class Triangle2D extends GeometricObject {
private double side1 = 1.0;
private double side2 = 1.0;
private double side3 = 1.0;
public Triangle2D() {}
public Triangle2D(double side1, double side2, double side3) {
this.side1 = side1;
this.side2 = side2;
this.side3 = side3;
}
public double getSide1() {
return side1;
}
public double getSide2() {
return side2;
}
public double getSide3() {
return side3;
}
public double getArea() {
double s = (side1 + side2 + side3) / 2;
return Math.sqrt(s * (s - side1) * (s - side2) * (s - side3));
}
public double getPerimeter() {
return side1 + side2 + side3;
}
public String toString() {
return "三角形: side1 = " + side1 + " side2 = " + side2 + " side3 = " + side3;
}
}
```
下面是测试程序的实现:
```java
import java.util.Scanner;
public class TestTriangle2D {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入三角形的三条边: ");
double side1 = input.nextDouble();
double side2 = input.nextDouble();
double side3 = input.nextDouble();
System.out.print("请输入三角形的颜色: ");
String color = input.next();
Triangle2D triangle = new Triangle2D(side1, side2, side3);
triangle.setColor(color);
System.out.println("面积为: " + triangle.getArea());
System.out.println("周长为: " + triangle.getPerimeter());
System.out.println("颜色为: " + triangle.getColor());
}
}
```
样例输出:
```text
请输入三角形的三条边: 3 4 5
请输入三角形的颜色: 红色
面积为: 6.0
周长为: 12.0
颜色为: 红色
```
阅读全文