各位大侠帮我看看错在哪里

来源:百度知道 编辑:UC知道 时间:2024/06/04 04:24:09
class square{
double width, height,length,a,b;
void setV(double w, double h,double l ) {
width = w;
height = h;
length = l;
}

double volum(double w,double h,double l) {
a=width*height*length;
return a;
}

double area(double w,double h,double l){
b= 2*(width*height+height*length+width*length);
return b;
}

}
class Test {
public static void main(String args[]) {
double d_aa;
double d_bb;

square mysquare = new square();

d_aa = mysquare.volum(1,2,3);
d_bb = mysquare.area(1,2,3);

System.out.println(d_aa.volum());
System.out.println(d_bb.area());
}
}
那应该怎样改

错误不少,不过都是小错误。
以下是我给你调试过的,自己慢慢看吧,不懂再问我。

class square{
double width;
double height;
double length;
double a;
double b;

public square(){ //此处是无参的构造函数
width=0.0;
height=0.0;
length=0.0;
}

public square(double w,double h,double l){ //此处是带参的构造函数
width=w;
height=h;
length=l;
}

void setV(double w, double h,double l ) {
width = w;
height = h;
length = l;
}

double volum() { //此处将参数去掉
a=width*height*length;
return a;
}

double area(){ //此处将参数去掉
b= 2*(width*height+height*length+width*length);
return b;
}

}
class Test {
public static void main(String args[]) {
double d_aa;
double d_bb;

square mysquare = new square();

//square mysquare = new square(3.0, 5.0, 8.0); //这样就可以不调用setV方法来传递参数

mysquare.setV(3.0, 5.0, 8.0);