这段JAVA代码哪里有问题呢?

来源:百度知道 编辑:UC知道 时间:2024/07/04 11:36:19
class Mj
{
double x,y,z;
void init(double x,double y,double z)
{
this.x=x;
this.y=y;
this.z=z;
}
double mianji(double x,double y,double z)
{
double s;
s=this.x*this.y*this.z;
return s;
}
}
class UseMj
{
Mj p1=new Mj();
p1.init(10.2,15.1,5.0);
System.out.println("体积为:"+p1.mianji());
}

double mianji(double x,double y,double z)
{
double s;
s=this.x*this.y*this.z;
return s;
}
改成
double mianji()
{
double s;
s=this.x*this.y*this.z;
return s;
}
没有必要写参数!

class UseMj {

public static void main(String[] args) {
Mj p1=new Mj();
p1.init(10.2,15.1,5.0);
System.out.println("体积为:"+p1.mianji(10.2, 15.1, 5.0));
}

}
要有主函数才行!

来看看mianji()那个函数,既然Mj中有xyz这几个变量,显然ini这个函数是初始化这些变量,而一个类中的变量是可以被他其中是函数使用的,但你现在mianji()中也有xyz这三个变量的参数,这样一来类Mj中的xyz就被mianji()屏蔽了,只能使用this关键字调用,现在你的这段程序就是说你每次调用mianji()是必须输入3个无关的变量,你可以把代码改成下面这个样子:(你原先的代码连主函数也没有,是无法测试和直接使用的)
class Mj
{
double x,y,z;
void init(double x,double y,double z)
{
this.x=x;
this.y=y;
this.z=z;
}
double mianji()
{
return x*y*z;
}
}
public class UseMj{
public static void main(String[] args){
Mj p