日期:2014-05-20  浏览次数:20749 次

新手求教 类的调用与Scanner
编写了一个很简单的程序 求长方体体积 一开始报错后来改了下可以运行但不知道一开始错的原因
(类)public class squar{
double chang,width,height,area;
double getArea(){
area=chang*width*height;
return area;
}

}
(程序)import java.util.Scanner;
public class volume{
public static void main(String args[]){
squar cuboid=new squar();
Scanner in=new Scanner(System.in);
System.out.println("请输入长方体的长:");
double a=in.nextDouble();
cuboid.chang=a;
System.out.println("请输入长方体的宽:");
double w=in.nextDouble();
cuboid.width=w;
System.out.println("请输入长方体的高:");
double h=in.nextDouble();
cuboid.height=h;
System.out.println("长方体的体积是:"+cuboid.getArea() );
}
}(这个是能运行的)
一开始程序是这样写的:import java.util.Scanner;
public class volume{
 public static void main(String args[]){
squar cuboid=new squar();
Scanner in=new Scanner(System.in);
System.out.println("请输入长方体的长:");
double cuboid.chang=in.nextDouble();
System.out.println("请输入长方体的宽:");
double cuboid.width=in.nextDouble();
System.out.println("请输入长方体的高:");
double cuboid.height=in.nextDouble();
System.out.println("长方体的体积是:"+cuboid.getArea() );
}
}(这个不能运行 是什么原因 求解释)
------解决方案--------------------
double cuboid.chang=in.nextDouble();
cuboid是squar的引用,duboid.width是调用squar类的变量,已经定义的变量咋能再定义呢?