sun公司对该异常的解释如下:当应用程序递归太深而发生堆栈溢出时,抛出该错误。所以你只需要检查你之前的代码,是否哪个地方使用了递归,看看这个递归有没有终止的条件,就可以了。你这个程序最下面明显是一个递归啊,你看一看你这个递归有终止的条件吗。
你光标所在的那一行,syso(proxy)相当于syso(proxy.toString()),然后代理对象又来执行这个invoke方法,如此循环下去,就内存溢出了。