Java面向对象练习(2) (2024.7.11)

07-17 776阅读

        圆类

package area20240711;
public class Circle extends Picture{
    private double r;
    private final double PI = 3.1415926;
    public Circle(){}
    public Circle(double r) {
        this.r = r;
    }
    public double getR() {
        return r;
    }
    public void setR(double r) {
        this.r = r;
    }
    public double getPI() {
        return PI;
    }
    @Override
    public double length() {
        return 2 * PI * this.r;
    }
    @Override
    public double area() {
        return this.r * this.r * PI;
    }
}

        图形类

Java面向对象练习(2) (2024.7.11)

package area20240711;
public abstract class Picture {
    public abstract double length();
    public abstract double area();
}

        矩形类

package area20240711;
public class Rectangle extends Picture{
    private double length;
    private double width;
    public Rectangle(){}
    public Rectangle(double length, double width) {
        this.length = length;
        this.width = width;
    }
    public double getLength() {
        return length;
    }
    public void setLength(double length) {
        this.length = length;
    }
    public double getWidth() {
        return width;
    }
    public void setWidth(double width) {
        this.width = width;
    }
    @Override
    public double length() {
        return 2.0 * (this.length + this.width);
    }
    @Override
    public double area() {
        return this.length * this.width * 1.0;
    }
}

        测试

package area20240711;
import java.util.Scanner;
public class AreaTest {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        // 创建一个矩形
        Rectangle rtg = creatRectangle();
        System.out.println("长为" + rtg.getLength() + "宽为" + rtg.getWidth()
        + "的矩形的周长是" + rtg.length());
        System.out.println("长为" + rtg.getLength() + "宽为" + rtg.getWidth()
        + "的矩形的面积是" + rtg.area());
        // 创建一个圆形
        Circle c = creatCircle();
        System.out.println("半径为" + c.getR() + "圆的周长是" + c.length());
        System.out.println("半径为" + c.getR() + "圆的面积是" + c.area());
    }
    public static Rectangle creatRectangle () {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入矩形的长");
        double length = sc.nextDouble();
        System.out.println("请输入矩形的宽");
        double width = sc.nextDouble();
        return new Rectangle(length, width);
    }
    public static Circle creatCircle() {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入圆形的半径");
        double r = sc.nextDouble();
        return new Circle(r);
    }
}

 

 

 

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]