1. Cylinder 类继承 Circle 类,请按注释补充相关代码。

实验六 继承与抽象类
实验目的
1.掌握类的继承的语法。
2.掌握子类对象中调用父类定义的成员方法。
3.掌握在子类中实现父类中的抽象方法。
主要仪器设备及耗材
安装了 JDK1.8 的 PC 一台
实验内容
1. Cylinder 类继承 Circle 类,请按注释补充相关代码。
import java.util.Scanner;
class Circle {
 private final static double PI = 3.141596;
 public double radius;
 public Circle() {
 }
 public Circle(double r) {
 this.radius = r;
 }
 //返回圆的面积
 public double getArea() {
 【补充代码】
 }
 // 返回圆的周长
 public double getPerimeter() {
 【补充代码】
 }
 // 显示圆的信息
 public void disp() {
 System.out.println("Cicle's radius: " + this.radius + " Area:"
 + getArea() + " Perimeter: " + getPerimeter());
 }
}
public class Cylinder extends Circle {
 private static Scanner input = new Scanner(System.in);
 public double height;// 高度
 Cylinder(double r, double h) {
 【补充代码】// 设置圆的半径
 this.height = h;
 }
 //获取圆柱的高度
 public double getHeight() {
 【补充代码】
 }
 //获取圆柱的体积
 public double getVol() {
 【补充代码】
 }
 //显示圆柱的体积
 public void dispVol() {
 【补充代码】
 }
 public static void main(String[] args) {
 double radius, h;
 do {
 System.out.print("请输进半径(radius>=0): ");
 radius = input.nextDouble();
 System.out.print("请输进高度(height>=0): ");
 h = input.nextDouble();
 } while (【补充代码】);
 Cylinder cy = new Cylinder(radius, h);
 cy.disp();// 显示圆的面积
 cy.dispVol();// 显示圆柱的体积
 }
}

Circle.java

package com.temp;

/**
 * @Author lanxiaofang
 * @email [email protected]
 * @date 2020/10/12 8:20
 */
public class Circle {
    private final static double PI = 3.1415926;
    public static double radius;

    public Circle() {
    }

    public Circle(double r) {
        radius = r;
    }

    //返回圆的面积
    public double getArea() {
        return PI*radius*radius;
    }

    // 返回圆的周长
    public double getPerimeter() {
        return 2*PI*radius;
    }

    // 显示圆的信息
    public void disp() {
        System.out.println("Cicle's radius: " + radius + " Area:"
                + getArea() + " Perimeter: " + getPerimeter());
    }


}

Cylinder.java 

package com.temp;

import java.util.Scanner;

/**
 * @Author lanxiaofang
 * @email [email protected]
 * @date 2020/10/12 8:22
 */
public class Cylinder extends Circle{

    private static Scanner input = new Scanner(System.in);
    public double height;// 高度
    public double radius;// 半径
    
    Circle circle;
     
    Cylinder(double r, double h) {
        this.radius = r;
        circle = new Circle(r);
        this.height = h;
    }

    //获取圆柱的高度
    public double getHeight() {
        System.out.println("-- height is " + height);
        return height;
    }
    //获取圆柱的体积
    public double getVol() {
        return getHeight()*(circle.getArea());
    }
    //显示圆柱的体积
    public void dispVol() {
        System.out.println("--圆柱的体积是"+getVol());
    }
    public static void main(String[] args) {
        double radius, h;
        do {
            System.out.print("请输进半径(radius>=0): ");
            radius = input.nextDouble();
            System.out.print("请输进高度(height>=0): ");
            h = input.nextDouble();
            Cylinder cy = new Cylinder(radius, h);
            cy.disp();// 显示圆的面积
            cy.dispVol();// 显示圆柱的体积
        } while (radius>=0&&h>=0);
        
    }

}

猜你喜欢

转载自blog.csdn.net/c_lanxiaofang/article/details/109021541