【发布时间】:2021-07-16 06:20:10
【问题描述】:
abstract class shape{
public double volume;
public double surface;
}
class cube extends shape{
public static double side;
public static double newSide;
cube(double newSide){
side = newSide;
}
public double volume(){
return side;
}
public double surface(){
return newSide;
}
}
public class shapes {
public static void main(String[] args) {
cube a = new cube(5);
System.out.println (a.volume);
System.out.println (a.surface);
}
}
这会产生:
0.0 0.0
我通过构造函数传递的参数似乎没有被立方体类正确处理。
我在这里做错了什么?
【问题讨论】:
-
不是 java 专家,但我认为您正在打印成员变量
volume而不是调用函数volume()。 (java允许变量和方法同名,根据你是否使用()来选择)
标签: java class constructor parameter-passing