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

新手学java,写了一个Calculate类,但是调用的时候一直出问题,求解惑

import java.util.Scanner;

public class T1226 {

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s=new Scanner(System.in);
Calculate c=new Calculate();
System.out.println("第一个数");
float num1=s.nextFloat();
System.out.println("第二个数");
float num2=s.nextFloat();
System.out.println(num1+"+"+num2+"="+c.add(num1,num2));
System.out.println(num1+"-"+num2+"="+c.minus(num1, num2));
System.out.println(num1+"*"+num2+"="+c.multiply(num1, num2));
System.out.println(num1+"/"+num2+"="+c.divide(num1, num2));

}
public class Calculate{
public float add(float i,float j){
return i+j;
}
public float minus(float i,float j){
return i-j;
}
public float multiply(float i,float j){
return i*j;
}
public float divide(float i,float j){
return i/j;
}
}

}


然后就是出现了这样的错误
刚开始自学java,还有很多不懂,这个问题搞了很久,但是还是没搞出来。。、

------解决方案--------------------
改成

Calculate c= new T1226().new Calculate();

------解决方案--------------------
因为那是内部类
------解决方案--------------------
把Calculate类代码单独写在一个文件Calculate.java里 或者 Calculate声明改为public static class Calculate{
------解决方案--------------------
 Calculate c= new T1226().new Calculate();

------解决方案--------------------
或者 
 Calculate c=new Calculate();

public static class Calculate {