为了账号安全,请及时绑定邮箱和手机立即绑定

求指点!!!!!!

这个最后一行的ptint();为什么能直接写可以,但是练习题的

int allScore=HelloWorld.sum();就不能写成int allScore=sum();,求大佬指点!!!!!我觉得是静态方法调用静态方法就应该可以直接调用啊,但为什么还得用类调用?

正在回答

4 回答

可以啊,static就是说在最开始已经为这个方法分配了内存空间,已经与HelloWorld这个特定的类关联,而你又是在此类中调用,所以无需实例化也是可以的,你是不是其他地方的代码有点问题?你可以把你运行错误的那个代码贴出来我看一下

1 回复 有任何疑惑可以回复我~
#1

qq_慕的地0597903 提问者

谢谢大佬了,问题解决了。是我缺了一个字母个字母
2019-08-02 回复 有任何疑惑可以回复我~

练习题的也可以写成int allScore=sum();啊。。。我就这么写的运行成功的0.0

0 回复 有任何疑惑可以回复我~
#1

qq_慕的地0597903 提问者

谢谢了大佬,是我的问题,这么写确实可以
2019-08-02 回复 有任何疑惑可以回复我~

可以啊

public class HelloWorld {
   
    // 定义静态变量score1
    static int score1 = 86;
    // 定义静态变量score2
 static int score2 = 92;

    // 定义静态方法sum,计算成绩总分,并返回总分
 public static   int sum() {
        int sum=score1+score2; 
        return sum;
     
 }

 public static void main(String[] args) {
       
        // 调用静态方法sum并接收返回值
  int allScore = sum() ;
       
  System.out.println("总分:" + allScore);
 }
}

1 回复 有任何疑惑可以回复我~
#1

qq_慕的地0597903 提问者

感谢感谢大佬,问题解决了
2019-08-02 回复 有任何疑惑可以回复我~

因为你这里语句不完整,我觉得可能是静态方法和调用的那个类不是同一个类,静态方法只有在同一个类中才可以直接调用,不用   类.方法()。也就是说,你的静态方法是定义在HelloWorld类中,但是你这个调用 并不是在这个类中。

1 回复 有任何疑惑可以回复我~
#1

qq_慕的地0597903 提问者

谢谢大佬了,解决了,感谢
2019-08-02 回复 有任何疑惑可以回复我~
#2

纸短

么事,我也在学。
2019-08-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530099    人
  • 解答问题       6086    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

求指点!!!!!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信