版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
定义一个圆类Circle,成员变量:半径 radius;成员方法:构造方法、get和set半径的方法、计算面积和周长的方法。定义圆柱和圆锥类,定义相应的变量成员和成员方法。使用以上类编程,输出圆柱和圆锥面积和体积
public class Circle {
public double radius;
public double pai = 3.14;
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
public Circle(double radius) {
this.radius = radius;
}
public Circle() {
}
public double Perimeter() {
return 2 * pai * radius;
}
public double Area() {
return pai * (radius * radius);
}
}
public class Cylinder {
private double width;
private double height;
private Circle circle;
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
circle = new Circle(width / 2);
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public Cylinder(double width, double height) {
this.width = width;
this.height = height;
circle = new Circle(width / 2);
}
public Cylinder() {
}
public double calculSideArea() {
return circle.Perimeter() * height;
}
public double calculSurfaceArea() {
return (calculSideArea() + circle.Area()) * 2;
}
public double calculVolume() {
return circle.Area() * height;
}
}
public class Cone {
private double width;
private double height;
private Circle circle;
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
circle = new Circle(width / 2);
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public Cone(double width, double height) {
this.width = width;
this.height = height;
circle = new Circle(width / 2);
}
public Cone() {
}
public double calculSideBusLine() {
return Math.sqrt(circle.radius * circle.radius + height * height);
}
public double calculSideArea() {
return circle.pai * circle.radius * calculSideBusLine();
}
public double calculSurfaceArea() {
return circle.pai * circle.radius * (calculSideBusLine() + circle.radius);
}
public double calculVolume() {
return circle.pai * (circle.radius * circle.radius) * height / 3;
}
}
public class Test {
public static void main(String[] args) {
double radius = 1.5;
double width = radius * 2;
double height = 8;
Circle circle = new Circle(radius);
System.out.println("圆形周长:"+String.format("%.2f",circle.Perimeter()));
System.out.println("圆形面积:"+String.format("%.2f",circle.Area()));
Cylinder cylinder = new Cylinder(width, height);
System.out.println("圆柱体侧面积:"+String.format("%.2f",cylinder.calculSideArea()));
System.out.println("圆柱体面积:"+String.format("%.2f",cylinder.calculSurfaceArea()));
System.out.println("圆柱体体积:"+String.format("%.2f",cylinder.calculVolume()));
Cone cone = new Cone(width, height);
System.out.println("圆锥体体侧面积:"+String.format("%.2f",cone.calculSideArea()));
System.out.println("圆锥体面积:"+String.format("%.2f",cone.calculSurfaceArea()));
System.out.println("圆锥体体积:"+String.format("%.2f",cone.calculVolume()));
}
}
运行结果如下:
以上代码经过测试,可以放心使用