JAVA练习25-根据周长求面积

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

 

前言

一、题目-根据周长求面积

1.题目描述

2.思路与代码

 

总结


前言

提示:这里可以添加本文要记录的大概内容:

1月19日练习内容


提示:以下是本篇文章正文内容,下面案例可供参考

一、题目-根据周长求面积

1.题目描述

描述

已知:

1. 图形类Shape,该类中定义了图形的周长属性,以及返回周长的方法。

2. Area接口,该接口中定义了返回面积的方法getArea()。

要求:

1. 定义圆形类Circle,使其继承于Shape,并实现Area接口。

2. 定义方形类Square,使其继承于Shape,并实现Area接口。

注意:

圆周率要使用Math类中的常量。

输入描述:

周长

输出描述:

面积(计算时请使用Math类中的常量,面积为double类型,保留三位小数,四舍五入部分预设代码已经完成)

2.思路与代码

2.1 思路

1.首先对类的构造函数进行编写,使用super关键字调用父类的变量

2.计算边长

2.重写面积函数

2.2 代码

 

代码如下(示例):

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextDouble()) {
            double s = scanner.nextDouble();
            // Circle和Square是需要你定义的类
            System.out.println(String.format("%.3f", new Circle(s).getArea()));
            System.out.println(String.format("%.3f", new Square(s).getArea()));
        }
    }

}

class Shape {

    private double s; // 周长

    public Shape(double s) {
        this.s = s;
    }

    public double getS() {
        return s;
    }

}

interface Area {
    double getArea(); // 面积
}

// 圆形
class Circle extends Shape implements Area {

    //write your code here......
    //构造函数
    public Circle(double s) {
        super(s);
    }

    double r = super.getS() / (2 * Math.PI);

    public double getArea() {
        return Math.PI * r * r;
    }

}

// 方形
class Square extends Shape implements Area {

    //write your code here......
    public Square(double s) {
        super(s);
    }

    double side = super.getS() / 4;

    public double getArea() {
        return side * side;
    }

}

 


总结

提示:这里对文章进行总结:
 

 

你可能感兴趣的:(java练习,java)