1.
public abstract class Shape {
public String getName() {//获得图形的名称return this.getClass().getSimpleName();
}
public abstract double getArea();//获得图形的面积
}
2.
public class Circle extends Shape {
private double radius;
public Circle(double radius) {//获得圆形的半径
this.radius = radius;
}
@Override
public double getArea() {//计算圆形的面积
return Math.PI * Math.pow(radius, 2);
}
}
3.
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;
}
}
4.
public class GraphicArea {
public static void main(String[] args) {
Circle circle = new Circle(1);//创建圆形对象并将半径设置成1
System.out.println("图形的名称是:" + circle.getName());
System.out.println("图形的面积是:" + circle.getArea());
Rectangle rectangle = new Rectangle(1, 1);//创建矩形对象并将长和宽设置成1
System.out.println("图形的名称是:" + rectangle.getName());
System.out.println("图形的面积是:" + rectangle.getArea());
}
}
执行结果:
图形的名称是:Circle
图形的面积是:3.141592653589793
图形的名称是:Rectangle
图形的面积是:1.0