不难的,可以直接自己操作,
有问题来交流
public class Testshape{
public static void main(String[] args) {
ShapeCalculate s = new ShapeCalculate();
double circleArea = s.getCircleArea(5, 3.14);
System.out.println("半径为5的圆的面积是:"+circleArea);
double circlePerimeter = s.getCirclePerimeter(5, 3.14);
System.out.println("半径为5的圆的周长是:"+circlePerimeter);
double rectanglePerimeter = s.getRectanglePerimeter(5, 4);
System.out.println("长为5,宽为4的长方形的周长为:"+rectanglePerimeter);
double rectangleArea = s.getRectangleArea(5, 4);
System.out.println("长为5,宽为4的长方形的面积为:"+rectangleArea);
}
}
abstract class ShapeCircle{
//1.求圆的周长
public abstract double getCirclePerimeter(double r,double PI);
//2.求圆的面积
public abstract double getCircleArea(double r,double PI);
}
abstract class ShapeRectangle{
//3.求长方形的周长
public abstract double getRectanglePerimeter(double x,double y);
//4.求长方形的面积
public abstract double getRectangleArea(double x,double y);
}
class Circle extends ShapeCircle{
double PI=3.14;
double r;
@Override
public double getCirclePerimeter(double r, double PI) {
double perimeter = PI*r*2;
return perimeter;
}
@Override
public double getCircleArea(double r, double PI) {
double area = PI*r*r;
return area;
}
}
class Rectangle extends ShapeRectangle {
double x,y;
@Override
public double getRectanglePerimeter(double x, double y) {
return (x+y)*2;
}
@Override
public double getRectangleArea(double x, double y) {
return x*y;
}
}
class ShapeCalculate{
public double getCirclePerimeter(double r, double PI) {
double perimeter = PI*r*2;
return perimeter;
}
public double getCircleArea(double r, double PI) {
double area = PI*r*r;
return area;
}
public double getRectanglePerimeter(double x, double y) {
return (x+y)*2;
}
public double getRectangleArea(double x, double y) {
return x*y;
}
}