【发布时间】:2016-08-10 23:04:51
【问题描述】:
这是我的问题:
当我打印两个形状的 area 时,我得到 ellipse 的 正确 区域,但是 @ 圈子 987654321@。为什么?
我有多个圆半径。如何继续将其添加到由先前半径计算的区域?简而言之,我需要将所有半径的面积相加。
每当我通过圆的半径时,我还需要将圆区域(由半径计算)也添加到椭圆区域。该怎么做?
这是我当前的代码:
public class Ellipse {
private double area;
private double axis1;
private double axis2;
public Ellipse() {
area = 0;
}
public Ellipse (double axis1, double axis2) {
this.axis1 = axis1;
this.axis2 = axis2;
}
public void calculateArea() {
area += axis1 * axis2;
}
public double getArea() {
return area;
}
}
public class Circle extends Ellipse {
private double radius;
private double area;
public Circle(){
area = 0;
}
public Circle(double radius) {
super(radius, radius);
}
public double getArea() {
return area;
}
}
public class Driver {
public static void main (String args[]) {
Ellipse ellipse = new Ellipse(10, 20);
ellipse.calculateArea();
Circle circle = new Circle(50);
circle.calculateArea();
System.out.println("Area of Circle is : " + ellipse.getArea());
System.out.println("Area of Circle is : " + circle.getArea());
}
}
【问题讨论】:
标签: java oop inheritance geometry