读书人

java解释,该怎么处理

发布时间: 2013-06-26 14:29:32 作者: rapoo

java解释
class C1
{
static int j = 0;
public void method(int a)
{
j++;
}
}
class Test12 extends C1
{
public int method()
{
return j++;
}
public void result()
{
method(j);
System.out.println(j+method());
}

public static void main(String[] args)
{
new Test12().result();
}
}

请大神帮我分析下这个程序
[解决办法]
请问有什么问题吗?
new Test12().result();
所有的执行都在这一句,
没有构造方法,不会执行代码,那么所有的操作都在result()这个方法。
method(j);这个是执行父类的方法,结果为j = 1;
System.out.println(j + method()); 这个为输出结果,因为上面得到了j=1,method()方法返回j=1的值,本身值应该为2了。
因为加法运算是从左至右,j=1的值已经取出来,不会采用j本身为2的值了。
结果输入2。应该这个答案是正确的。

读书人网 >Java相关

热点推荐