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());
    }

}

猜你喜欢

转载自blog.csdn.net/weixin_54446335/article/details/131509890
今日推荐