面试题——设计一个程序:运行报错Stack Overflow Error

所谓Stack Overflow就是栈里面放的东西太多了,溢出了。
大家知道栈里面存放的是基本数据类型还有引用类型。

下面看这个程序

 

class Test  
{  
    public static void main(String[] args)   
    {  
        String[] str={"a","b"};  
        Test.main(str);  
    }  
}  


这个方法的形参是一个数组,传入的实参是一个名叫str的数组,这个str作为数组的引用当然要放在栈里面。
相信大家一下就能看出这个一个没有终点的循环调用,可以想象,栈里面会有数不清的str引用,当超过了栈存储上限了,就报错喽~

 

 

posted on 2013-08-29 20:08  新一  阅读(287)  评论(0编辑  收藏  举报

导航