欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Exception in thread "main" java.lang.StackOverflowError(栈溢出),

来源: javaer 分享于  点击 26677 次 点评:203

Exception in thread "main" java.lang.StackOverflowError(栈溢出),


             昨天晚上写代码的时候碰到一个bug,当时傻乎乎的调好久,请教老师,老师一眼就看出来了。

报错:Exception in thread "main" java.lang.StackOverflowError 

我这里写了一个小代码来实现了这个错误  如下:

第一个类 dome01:

package test;

public class dome01 {
         dome02 dome02 =  new dome02();
         public void name() {
             dome02.name();
            System.out.println("这是一个错误!");
        }
         
         public static void main(String[] args) {
            dome01 dome01 = new dome01();
            dome01.name();
         }
         
}

 

第二个类dome02

package test;

public class dome02 {
     dome01 dome01 =  new dome01();
    public void name() {
        dome01.name();
        System.out.println("内存泄漏导致的错误");
    }
}

 

相信很快就能发现,dome01中 new了一个 dome02, dome02中有new了一个dome01,在进入程序中 两个对象相互调用

造成了死循环,直到栈溢出,简单说就是内存泄漏了

解决方法:

        避免两个方法之间的反复调用,以免出现内存的泄漏

 

相关文章

    暂无相关文章
相关栏目:

用户点评