public static void main (String args[]) {
int i;
         Test3 t3 = new Test3();
i=t3.addMethod(2,4);
System.out.println (i);
  }

解决方案 »

  1.   

    或者
    public class Test3 {
    static int addMethod(int a, int b) {
    int c;
    c=a+b;
    return c;
    }
    public static void main (String args[]) {
    int i;
    i=Test3.addMethod(2,4);
    System.out.println (i);
      }
    }
      

  2.   

    对,你并没有Test3类的对象实例,所以无法调用int addMathod(),而只有将addMathod()改为static方法才可以在不生成Test3类的对象的情况下调用它.
      

  3.   

    请教
    addMethod(int a, int b) 
    是起什么作用的?
      

  4.   

    哦~~~~我觉得楼上大虾都说得很好。但是,我想请大虾说明一下,为什么没有声明为static就必须实例化呢?能说出个道道来吗,还是只能解释为这是语言的硬性规定呢。
      

  5.   

    你看过深度探索C++对象模型就知道了
    内存分配的不一样
    类也不能说是抽象
    不然virtual/abstract算什么呢?
    interface又算什么呢?
    实例化只是表示现在在堆中有那么个对象你可以访问而已
      

  6.   

    我就 这个问题再来问一个问题(我是初学者,请多多指教)   如果在这个Test类里如果再有构造方法的话又会是怎么样的结果
      谢谢了
      

  7.   

    在Text类中有构造函数,则在执行Text t=new Text()时,会对此类初始化的。
    你说一说你要实现的细节
    程序呢
      

  8.   

    楼上的话就很对,只不过打错了几个字母而已。
    thinkerhj(hjzxy)的方法就很好
    Test3 t3 = new Test3();
    构造了类的实例
    i=t3.addMethod(2,4);
    通过是里进行了调用