| 这个程序有意思,运行是大家可能会有疑问,怎么会打印4了。 一遍的4。 即使我手快去 按 Ctrl + C  看到的打一个打印的结果依然是4 。
 呵呵,于是我改造了下这个程序,方便大家看到程序执行过程:
 
 代码如下:
 class Demo
 {
 public static void main(String[] args) throws Exception
 {
 int x  =0;
 x= x+1;
 
 main(x);
 System.out.println(x);
 
 }
 public static void main(int y) throws Exception
 {
 Thread.sleep(1000);   //让线程给个待1秒钟 , 这样可以看到第一次打印的结果了吧。
 System.out.println("--1-- y = "+y);
 int x= 2;
 y = y +2  ;
 Thread.sleep(1000);
 System.out.println("--2-- y = "+y + " , x = "+x);
 
 System.out.println(y);
 main(x);
 Thread.sleep(1000);
 System.out.println("--3-- y = "+y + " , x = "+x);
 System.out.println(x);
 }
 }
 
 ------------------
 
 执行后结果为
 
   
 
 从上面我们可以看出
 循环的第二次就是4了,第一次的3 太快了,不可能让你看到的。
 
 最后 , 这样的递归调用,最终肯定会死掉了。
 |