自我认罪,请详解。

yanliang_xt 2009-09-03 06:10:08
刚才zhishangwuzhe同学的那贴,感觉自己太过武断了。

public class Test23
{
private static int i = 4;
public static int fun() {
System.out.println("fun method");
return 8;
}
public static void main(String... args) {
System.out.println("i = " + i + ",fun() " + fun() );
}


}


System.out.println("i = " + i + ",fun() " + fun() );

这一句的执行问题:
我以为是要先执行fun()方法,然后把它的值与其它的组成一个String再进行输出打印。
我只是很浅显的进行了分析就说是先执行了fun()。但是我觉得这是错的。(所以特向那位同学认个错。^.^)

但是现在我觉得,这条语句还是按其顺序执行。只是在执行println()里的fun()方法的时候进入到fun()中又碰到了一个println()方法也就是现在指向要执行语句的指针指向了fun()方法中,显然现在开始执行fun()方法里的println()所以先打印出了"fun method"
然后执行的指针跳出到先前的println()再进行打印输出。"i = 4,fun() 8"

不知现在我的理解对不对。

反正先前对那位同学的解释站不住稳的。希望没有对他造成误导。。

认罪啊。。
...全文
109 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
RainSmall 2009-09-04
  • 打赏
  • 举报
回复
楼主,昨天虽然受点小误导,但无妨,不过今天这知识受用了,谢了
yanliang_xt 2009-09-03
  • 打赏
  • 举报
回复
算了。。给分
呵呵。
ZhaoHuiZiXin 2009-09-03
  • 打赏
  • 举报
回复
好帖子
aunty_flybird 2009-09-03
  • 打赏
  • 举报
回复
必须是先fun method,然后才是main中的打印操作
lxxzhy 2009-09-03
  • 打赏
  • 举报
回复
哪个贴,我怎么没找到?

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧