class Box
{
// Instance Variables
double length ,ipsos ;
double width ,mikos ;
double height ,platos;
// Constructors
public Box ( double side )
{
width = side ;
height = side ;
length = side ;
}
public Box ( double x , double y , double z)
{
platos = y ;
ipsos = z;
mikos = x ;
}
// Methods
double calculate(double praksi)
{
return 2 * ( width * height +
width * length +
height * length ) ;
}
double volume(double emvadon)
{
return platos*ipsos*mikos ;
}
}
在上面的代码中,我怎样才能创建一个toString()方法,所以我可以返回卷的值并计算??? 我是java的新手,所以请尽可能简单
答案 0 :(得分:1)
不太确定方法'计算','volme'的参数是什么? 如果你想要覆盖默认的toString方法,那么当你调用System.out.println(新的Box(1,2,3))时:它打印出该卷,并且值计算该框的返回值,那么下面应该工作:
Box b = new Box(1,2,3);
System.out.println(b);
然后以下内容应该有效:
@Override
public String toString()
{
return "Volume: " + volume(0.0) + ", calculate: " + calculate(0.0);
}
这将打印音量和任何计算回报,两者都清楚地标记。
答案 1 :(得分:0)
将此方法添加到您的类中(以覆盖toString()
方法):
@Override
public String toString() {
return "Volume: " + volume(1) + "\n Calculate: " + calculate(1);
}
注意:@Override
是可选的:它只是沟通,如果拼错了被覆盖的方法(toString()
),请确保收到错误。
另外,如果您不使用volume
和calculate
,为什么还有1
和{{1}}的参数?这就是为什么我将{{1}}这样的随机数传给他们的原因,因为它显然并不重要。