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

答案为啥是27,我算出来是21?

答案为啥是27,我算出来是21?

Hectorai 2016-03-08 10:46:28
 class B{   int n;   static int sum=0;   void setN(int n){    this.n=n; }   int getSum(){     for(int i=1;i<=n;i++)        sum=sum+i;    return sum; }}public class A{   public static void main(String args[]){     B.b1=new B();b2=new B();      b1.setN(3);     b2.setN(5);     int s1=b1.getSum();     int s2=b2.getSum();     System.out.println(s1+s2);  }}
查看完整描述

1 回答

已采纳
?
Caballarii

TA贡献1123条经验 获得超629个赞

static的值只有一个并且是公用的

所以在b1.getSum()的时候sum是6,

在b2.getSum()之前sum还是6,因此b2.getSum()的结果是6+15=21

那么s1+s2就是6+21=27了

查看完整回答
3 反对 回复 2016-03-08
  • 1 回答
  • 0 关注
  • 2626 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号