6-2 对象组合-2021 分数 20 作者 yl 单位 西南石油大学 阅读主类中的Main方法,设计圆类Circle和圆锥体类Cone。具体要求如下。 (1)编写类Circle,表示圆形对象,包含以下成员 ①属性: 1) radius:私有,double型,圆形半径; ②方法: 1) Circle(double radius), 构造方法,用参数设置圆的半径, Circle(),构造方法,将圆形初始化为半径为0。 2) radius成员变量的set 和get方法 3) double getArea(),返回圆形的面积 4) double getPerimeter(),返回圆形的周长 5) public String toString( ),将把当前圆对象的转换成字符串形式,例如圆半径为10.0,返回字符串"Circle(r:10.00)"。半径值保留2位小数 (2)编写一个类Cone,表示圆锥体类,包含以下成员 ①属性:
时间: 2023-06-20 10:04:15 浏览: 297
电子测量中的基于YL-236单片机实训装置的数字电压表的设计方案
下面是Circle和Cone类的实现:
```java
public class Circle {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
public Circle() {
this.radius = 0;
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
public double getArea() {
return Math.PI * radius * radius;
}
public double getPerimeter() {
return 2 * Math.PI * radius;
}
public String toString() {
return String.format("Circle(r:%.2f)", radius);
}
}
public class Cone {
private Circle base;
private double height;
public Cone(Circle base, double height) {
this.base = base;
this.height = height;
}
public Circle getBase() {
return base;
}
public void setBase(Circle base) {
this.base = base;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public double getVolume() {
return base.getArea() * height / 3.0;
}
public double getSurfaceArea() {
double slantHeight = Math.sqrt(height * height + base.getRadius() * base.getRadius());
return Math.PI * base.getRadius() * slantHeight + base.getPerimeter() * slantHeight / 2.0;
}
public String toString() {
return String.format("Cone(base:%s, h:%.2f)", base.toString(), height);
}
}
```
其中,Circle类表示圆形对象,包含属性radius表示圆形半径,以及方法getArea和getPerimeter分别返回圆形的面积和周长。Cone类表示圆锥体类,包含属性base表示圆锥体底面的圆形对象,以及属性height表示圆锥体的高度,以及方法getVolume和getSurfaceArea分别返回圆锥体的体积和表面积。toString方法返回对象的字符串表示。
阅读全文