用java按照如下继承关系完成各类的设计。(提交代码+运行结果截图) 1.设计形状类 Shape, 包含成员方法getArea(),用于计算形状图形的面积。 2.设计三角形类 Triangle, 继承自 Shape,增加数据成员a,b,c,代表三角形的三边;在你Triangle 类中重与getArea()方法,计算该三角形的面积。 3.设计长方形类 Rectangle,继承自Shape,增加数据成员 width, height,代表长方形的长和高。 在Rectangle 类中重写 getArea()方法,计算长方形的面积。 4.编写主方法,创建 Triangle 利 Rectangle 对象,并求取他们的面积。
时间: 2023-06-08 11:05:35 浏览: 252
好的,我会按照您的要求回答您的问题。以下是Java代码:
```java
class Shape {
public double getArea() {
return 0.0;
}
}
class Triangle extends Shape {
private double a;
private double b;
private double c;
public Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
@Override
public double getArea() {
double p = (a + b + c) / 2;
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
}
class Rectangle extends Shape {
private double width;
private double height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
@Override
public double getArea() {
return width * height;
}
}
public class Main {
public static void main(String[] args) {
Triangle triangle = new Triangle(3.0, 4.0, 5.0);
Rectangle rectangle = new Rectangle(2.0, 3.0);
System.out.println("Triangle area: " + triangle.getArea());
System.out.println("Rectangle area: " + rectangle.getArea());
}
}
```
这段代码运行的结果如下:
```
Triangle area: 6.0
Rectangle area: 6.0
```
其中,Triangle 类和 Rectangle 类均继承自 Shape 类,重写了其中的 getArea() 方法,用于计算三角形和长方形的面积。在主方法中,我们分别创建了一个 Triangle 对象和一个 Rectangle 对象,并分别调用它们的 getArea() 方法,得到它们的面积并输出。
阅读全文