定义基本几何图形类Shape,Shape类的对象方法有:求面积方法 area(); 求周长方法 length(); 球体积方法 volume(); 输出图形的信息方法toString( )。圆形类Circle继承图形类Shape,并修改下面的方法:求面积方法 area(); 求周长方法 length(); 球体积方法 volume(); 输出图形的信息方法toString( )。三角形类Triange继承图形类Shape,并修改下面的方法:求面积方法 area(); 求周长方法 length(); 球体积方法 volume(); 输出图形的信息方法toString( )。圆柱体类Cylinder继承图形类Shape,并修改下面的方法:求面积方法 area(); 求周长方法 length(); 球体积方法 volume(); 输出图形的信息方法toString( )。上面的类都有构造函数。最后每个类都创建一个对象,并调用这些对象的toString( )方法
时间: 2024-03-26 15:39:31 浏览: 48
好的,下面是基本几何图形类Shape的定义代码:
```java
public abstract class Shape {
public abstract double area();
public abstract double length();
public abstract double volume();
public abstract String toString();
}
```
圆形类Circle继承图形类Shape的代码如下:
```java
public class Circle extends Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
@Override
public double area() {
return Math.PI * radius * radius;
}
@Override
public double length() {
return 2 * Math.PI * radius;
}
@Override
public double volume() {
return 0;
}
@Override
public String toString() {
return "圆形,半径为" + radius;
}
}
```
三角形类Triangle继承图形类Shape的代码如下:
```java
public class Triangle extends Shape {
private double a, b, c;
public Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
@Override
public double area() {
double p = (a + b + c) / 2;
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
@Override
public double length() {
return a + b + c;
}
@Override
public double volume() {
return 0;
}
@Override
public String toString() {
return "三角形,边长分别为" + a + "、" + b + "、" + c;
}
}
```
圆柱体类Cylinder继承图形类Shape的代码如下:
```java
public class Cylinder extends Shape {
private double radius, height;
public Cylinder(double radius, double height) {
this.radius = radius;
this.height = height;
}
@Override
public double area() {
return 2 * Math.PI * radius * height + 2 * Math.PI * radius * radius;
}
@Override
public double length() {
return 2 * Math.PI * radius;
}
@Override
public double volume() {
return Math.PI * radius * radius * height;
}
@Override
public String toString() {
return "圆柱体,底面半径为" + radius + "、高为" + height;
}
}
```
最后,我们创建每个类的对象,并调用它们的toString()方法:
```java
Circle c = new Circle(5);
System.out.println(c.toString());
Triangle t = new Triangle(3, 4, 5);
System.out.println(t.toString());
Cylinder cy = new Cylinder(3, 4);
System.out.println(cy.toString());
```
输出结果分别为:
```
圆形,半径为5.0
三角形,边长分别为3.0、4.0、5.0
圆柱体,底面半径为3.0、高为4.0
```
阅读全文