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

Java初级问题续~~~~~~~~~
"在Java中, "类方法不仅可以供类的实例使用,也可以提供给其他类 " "
class     GeneralFunction{    
      //此为类方法        
  public     static     int     add(int     x,int     y){    
                  return     x+y;    
  }    
}    
public     class     UseGeneral{    
      public     static     void     main(String[]     args){    
                  int     c     =     GeneralFunction.add(9,10);    
                  System.out.println(     "9+10=     "     +     c);    
      }    
}  
如果我再新建一个类
class   Function1
{
      Function1()
{}
}  
那这个类可以调用add()方法吗?
怎么在jc里面好像不行啊???
________________________________
完整的
class     GeneralFunction
{    
      //此为类方法        
  public     static     int     add(int     x,int     y)
  {    
                  return     x+y;    
  }    
}
class   Function2
{
Function2()
{}
}    
public     class     UseGeneral
{    
      public     static     void     main(String[]     args)
      {    
                  //int     c     =     GeneralFunction.add(9,10);  
                  int     c     =     Funtion2.add(9,10);    
                  System.out.println(     "9+10=     "     +     c);    
      }    
}


------解决方案--------------------
Function2这个类中只有一个构造器其余什么也没有,当然不能调用add()方法了,如果想调用的话,Function2要继承GeneralFunction。
改为如下,就可以用add()方法了
class GeneralFunction
{
//此为类方法
public static int add(int x,int y)
{
return x+y;
}
}
class Function2 extends GeneralFunction
{
Function2()
{}
}
public class UseGeneral
{
public static void main(String[] args)
{
Function2 f2 = new Function2();
int c = f2.add(9,10);
System.out.println( "9+10= " + c);
}
}