求解释一段java小程序,给我结果,谢谢

publicclasstestb{privatestaticintj=0;privatestaticbooleanmethodB(intk){j+=k;System.ou... public class testb {
private static int j = 0;
private static boolean methodB(int k){
j += k;
System.out.println(j);
return true;
}
public static void methodA(int i) {
boolean b;
b = i < 10 || methodB (4);
b = i < 10 | methodB (8);
}

public static void main (String args[] ){
methodA (0);
System.out.println(j);
}
}
展开
 我来答
月光雪松
2011-08-25 · TA获得超过476个赞
知道小有建树答主
回答量:338
采纳率:100%
帮助的人:232万
展开全部
执行 b = i < 10 || methodB (4);
因为主方法中传入的参数是0,所以0<10成立,b=true,因为||前面已经为true,所以发生短路,也就是程序就不会执行||后面的代码,于是,执行
b = i < 10 | methodB (8);
|不会发生短路,不论前面是否成立,都会执行|后面的代码,于是执行:
methodB (8);
j += k;//所以j=j+8=8
System.out.println(j);//这里输出输出8
执行完成后返回主方法
System.out.println(j);
//j是全局变量,还是会输出8
喜欢画孤独的鸟
2011-08-25 · TA获得超过252个赞
知道小有建树答主
回答量:242
采纳率:0%
帮助的人:175万
展开全部
8
8
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式