別のクラスで作成した Circle オブジェクトを使用して、円柱の体積を求めることになっています。getVolume メソッドを作成すると、Circle と double を乗算できないことがわかり、修正方法を知りたがっています。Cylinder クラスで getArea メソッドを作成できません。ユーザーが入力した半径を使用して新しい Circle を作成するだけです。コードは次のとおりです (1 番目は Circle クラス、2 番目は Cylinder クラス)。
public class Circle {
private double radius;
public Circle(double r) {
radius = r;
}
public double getArea() {
return Math.PI * radius * radius;
}
}
public class Cylinder {
private Circle base;
private double height;
public Cylinder(double r, double h) {
base = new Circle(r);
height = h;
}
public double getVolume() {
return base * height;
}
}
getVolume メソッドが私の問題です。「ベース」がまだ Circle オブジェクトである間に、プログラムに double として認識させるにはどうすればよいですか?