java类的练习–定义一个圆类Circle
题目
定义一个圆类Circle
,成员变量:半径 radius
;成员方法:构造方法、get
和set
半径的方法、计算面积和周长的方法。
定义圆柱和圆锥类,定义相应的变量成员和成员方法。
使用以上类编程,输出圆柱和圆锥面积和体积。
参考代码
// 参考文件名: Ch1.java
public class Ch1{
public static void main(String[] ags) {
double radius = 3;
double width = radius * 2;
double height = 15;
Circle circle = new Circle(radius);
System.out.println("圆形周长:" + circle.calculgirth());
System.out.println("圆形面积:" + circle.calculSquare());
Cylinder cylinder = new Cylinder(width, height);
System.out.println("圆柱体面积:" + cylinder.calculSurfaceArea());
System.out.println("圆柱体体积:" + cylinder.calculVolume());
Vertebral vertebral = new Vertebral(width, height);
System.out.println("圆锥体面积:" + vertebral.calculSurfaceArea());
System.out.println("圆锥体体积:" + vertebral.calculVolume());
}
}
class Circle {
double radius;
double pai = 3.14;
public Circle(double radius) { // 构造函数
this.radius = radius;
}
public double getRadius() { // 获取半径
return radius;
}
public void setRadius(double radius) { // 设置半径
this.radius = radius;
}
public double calculgirth() {
return 2 * pai * radius;
}
public double calculSquare() {
return pai * (radius * radius);
}
}
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.calculgirth() * height;
}
public double calculSurfaceArea() {
return (calculSideArea() + circle.calculSquare()) * 2;
}
public double calculVolume() {
return circle.calculSquare() * height;
}
}
class Vertebral {
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 Vertebral(double width, double height) {
this.width = width;
this.height = height;
circle = new Circle(width / 2);
}
public Vertebral() {
}
public double calculSideBusLine() {
return Math.sqrt(circle.getRadius() * circle.getRadius() + 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;
}
}
仅供参考,欢迎指正、交流、学习,摇一摇