定义一个表示圆的类Circle,构建合理的方法和变量;定义一个名为Cylinder类表示圆柱,它继承Circle类,要求定义一个变量height表示圆柱高度。

定义一个表示圆的类Circle,构建合理的方法和变量;定义一个名为Cylinder类表示圆柱,它继承Circle类,要求定义一个变量height表示圆柱高度。覆盖getArea()方法求圆柱的表面积,定义getVolume()方法求圆柱体积。定义默认构造方法和带radius和height两个参数的构造方法。编写测试程序,提示用户输入圆柱的底面圆的半径和高度,程序创建一个圆柱对象,计算并输出圆柱表面积和体积。用UML图画出类及其关系。

  1. 画出UML图:

      2.编写父类Circle类,代码如下:

package day1;

import java.util.Scanner;

public class Circle {
	double radius;
	public double area() {
		return radius*radius*3.14;	
	}
	public double getRadius() {
		return radius;
	}
	public void setRadius() {
		System.out.println("请输入底面面的半径:");
		Scanner sc =new Scanner(System.in);
		radius=sc.nextDouble();
		
	}

}

   3. 编写子类Cylinder继承父类Circle类,具体代码如下图所示:

package day1;

import java.util.Scanner;

public class Cylinder extends Circle {
	double height;
	public double getLength() {
		return 2*3.14*radius;
		
	}
	public double getVolume() {
		return height*area();
		
	}
	public double getArea() {
		return 2*area()+height*getLength();
		
	}
	
	public double getHeight() {
		return height;
	}
	public void setHeight() {
		System.out.println("请输入圆柱的高:");
		Scanner sc =new Scanner(System.in);
		height=sc.nextDouble();
	}
	public static void main(String[] args) {
		Cylinder a=new Cylinder();
		a.setRadius();
		a.setHeight();
		System.out.println("圆柱的表面积为:"+a.getArea());
		System.out.println("圆柱的体积为:"+a.getVolume());
			}
}

    4. 运行代码并检测:

发布了20 篇原创文章 · 获赞 5 · 访问量 5921

猜你喜欢

转载自blog.csdn.net/Until_U/article/details/104030809