酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

*设计一个圆类circle,具有属性:圆心坐标x和y及圆半径r,除具有设置及获取属性的方法外,还具有计算周长的方法perimeter()和计算面积的方法area()。再设计一个圆柱体类cylinder,cylinder继承自circle,增加了属性:高度h,增加了设置和获取h的方法、计算表面积的方法area()和计算体积的方法volume()。 在测试类中,创建cylinder的类对象,显示其所有属性,计算并显示其表面积和体积。 注意事项: 1) 因平台只能保存无格式代码,请先将编译器中的代码复制到记事本,再粘贴至本题答题框中 2) 提示:本题请使用 math.pi 以保证精度 3) 输出的标点符号用英文,注意空格,如果怕出错,可以直接在输出案例上拷贝标点符号 输入描述: 按照 (x y r h)d的顺序输入数据。 输入案例: 1 2 3 4 输出案例: 圆心坐标为(1.0,2.0), 圆半径为3.0, 高度为4.0, 表面积为131.94689145077132, 体积为113.09733552923255 java

```java import java.util.Scanner; import static java.lang.Math.PI; class Circle { private double x; private double y; private double r; public double getX() { return x; } public void setX(double x) { this.x = x; } public double getY() { return y; } public void setY(double y) { this.y = y; } public double getR() { return r; } public void setR(double r) { this.r = r; } public double perimeter() { return 2 * PI * r; } public double area() { return PI * r * r; } } class Cylinder extends Circle { private double h; public double getH() { return h; } public void setH(double h) { this.h = h; } public double area() { return 2 * super.area() + perimeter() * h; } public double volume() { return super.area() * h; } } public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); double x = scanner.nextDouble(); double y = scanner.nextDouble(); double r = scanner.nextDouble(); double h = scanner.nextDouble(); Cylinder cylinder = new Cylinder(); cylinder.setX(x); cylinder.setY(y); cylinder.setR(r); cylinder.setH(h); System.out.println("圆心坐标为(" + cylinder.getX() + "," + cylinder.getY() + "),"); System.out.println("圆半径为" + cylinder.getR() + ", 高度为" + cylinder.getH() + ","); System.out.println("表面积为" + cylinder.area() + ", 体积为" + cylinder.volume()); } } ``` [2024-10-20 10:03:11 | AI写代码神器 | 470点数解答]

相关提问