黑马程序员技术交流社区

标题: 关于方法定义的问题 [打印本页]

作者: 邱成    时间: 2012-6-15 09:03
标题: 关于方法定义的问题
public class Method{
     public int add(int shouSu,int weiSu){
           /*
                   public void Suan(){}      错
          */
           int geSu=weiSu;
           int he=(shouSu+weiSu)*geSu/2;
           return he;           
     }
}
为什么是错误的啊
作者: 李海    时间: 2012-6-15 09:12
  在Java中,方法是定义在类中的   你是在方法中又定义了方法   这种情况在Java中不支持   但是在C中,可以定义嵌套的函数
作者: 刘笑    时间: 2012-6-15 09:22
你犯了一个典型的错误,Java中函数不能嵌套。你在函数add()里又定义了一个Suan()函数,这在java里是不允许的。但是在java中可以类嵌套,或者类里定义函数。也就是类里可以再定义类或者函数
作者: 逝去的记忆ヽ    时间: 2012-6-15 09:25
在java中 方法之间的调用可以通过设置static方法。但是不可以在方法中再定义方法。这是不允许的。你上边的代码只要把错误的那个方法
再定义出来就好了。代码如下:

public class Method{
      public int add(int shouSu,int weiSu){
            /*
                    public void Suan(){}      错
          */

            Suan();//这样调用下面的static方法就可以了
            int geSu=weiSu;
            int he=(shouSu+weiSu)*geSu/2;
            return he;           
      }
}

public static void Suan(){}
作者: 郑冬    时间: 2012-6-15 09:29
在java中,在方法的内部是不能再定义方法的
作者: 陌花╮有意、    时间: 2012-6-15 13:15
java中不可以在方法中再定义方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2