java案例11:图形的面积与周长计算程序

思路:

/*
图形的面积与周长计算程序

计算不同图形的周长和面积。几何图形都有周长和面积,也有相应的计算公式

1.定义Shape作为抽象类,并在类中定义抽象方法求周长和面积

2.定义子类Circle,具有半径属性和常量PI,实现父类的抽象方法。

3.定义子类Rectangle,具有长和宽的属性,实现父类的抽象方法。

4.创建图形面积及周长计算器(ShapeCalculate),具有计算不同图形面积和周长的方法。

5.创建测试类,对ShapeCalculate计算周长和面积方法进行测试。

 */

代码:

代码结构;

测试类:

package base.base011;

/*
图形的面积与周长计算程序

计算不同图形的周长和面积。几何图形都有周长和面积,也有相应的计算公式

1.定义Shape作为抽象类,并在类中定义抽象方法求周长和面积

2.定义子类Circle,具有半径属性和常量PI,实现父类的抽象方法。

3.定义子类Rectangle,具有长和宽的属性,实现父类的抽象方法。

4.创建图形面积及周长计算器(ShapeCalculate),具有计算不同图形面积和周长的方法。

5.创建测试类,对ShapeCalculate计算周长和面积方法进行测试。

 */

public class Tset11 {
    public static void main(String[] args) {

        ShapeCalculate sc =  new ShapeCalculate();

        Circle c1 = new Circle(5);
        c1.getArea();
        c1.getPerimeter();

        System.out.println("圆形面积:");
        sc.calArea(c1);
        System.out.println("圆形周长:");
        sc.calPerimeter(c1);

        Rectangle r1 = new Rectangle(4,6);
        r1.getArea();
        r1.getPerimeter();

        System.out.println("长方形面积:");
        sc.calArea(r1);
        System.out.println("长方形周长:");
        sc.calPerimeter(r1);


    }
}

 Circle类:

package base.base011;

/*
2.定义子类circle,具有半径属性和常量PI,实现父类的抽象方法。
 */

public class Circle extends Shape {

    private double radius;
    private final double PI = 3.14;

    public Circle(double radius) {
        this.radius = radius;
    }

    @Override
    public double getArea() {
        return radius*radius*PI;
    }

    @Override
    public double getPerimeter() {
        return 2*PI*radius;
    }
}
Rectangle类:
package base.base011;

/*
3.定义子类Rectangle,具有长和宽的属性,实现父类的抽象方法。
 */

public class Rectangle extends Shape{

    private double length;
    private double width;

    public Rectangle(double length, double width) {
        this.length = length;
        this.width = width;
    }

    @Override
    public double getArea() {
        return length*width;
    }

    @Override
    public double getPerimeter() {
        return (length+width)*2;
    }
}

Shape类:

package base.base011;

/*
1.定义Shape作为抽象类,并在类中定义抽象方法求周长和面积
 */

public abstract class Shape {
    public abstract double getArea();
    public abstract double getPerimeter();
}
ShapeCalculate类:
package base.base011;

/*
4.创建图形面积及周长计算器(ShapeCalculate),具有计算不同图形面积和周长的方法。
 */

public class ShapeCalculate {

    public void calArea(Shape shape){
        System.out.println(shape.getArea());
    }

    public void calPerimeter(Shape shape){
        System.out.println(shape.getPerimeter());
    }

}

  • 10
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用继承来计算图形面积周长,具体的实现方式如下: 1. 创建一个形状(Shape)类作为父类,包含计算面积周长的方法。 ```java public abstract class Shape { public abstract double getArea(); public abstract double getPerimeter(); } ``` 2. 创建各种图形的子类,如圆形(Circle)、矩形(Rectangle)等,继承形状类,并实现父类中的抽象方法。 ```java public class Circle extends Shape { private double radius; public Circle(double radius) { this.radius = radius; } @Override public double getArea() { return Math.PI * radius * radius; } @Override public double getPerimeter() { return 2 * Math.PI * radius; } } ``` ```java public class Rectangle extends Shape { private double width; private double height; public Rectangle(double width, double height) { this.width = width; this.height = height; } @Override public double getArea() { return width * height; } @Override public double getPerimeter() { return 2 * (width + height); } } ``` 3. 在主函数中创建图形对象,并调用相应的方法计算面积周长。 ```java public static void main(String[] args) { Shape circle = new Circle(5); System.out.println("圆形的面积为:" + circle.getArea()); System.out.println("圆形的周长为:" + circle.getPerimeter()); Shape rectangle = new Rectangle(4, 6); System.out.println("矩形的面积为:" + rectangle.getArea()); System.out.println("矩形的周长为:" + rectangle.getPerimeter()); } ``` 输出结果: ``` 圆形的面积为:78.53981633974483 圆形的周长为:31.41592653589793 矩形的面积为:24.0 矩形的周长为:20.0 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值