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

toString方法导致的递归调用,tostring递归调用

来源: javaer 分享于  点击 35625 次 点评:286

toString方法导致的递归调用,tostring递归调用


1. 在toString方法中使用this关键字,导致的递归,见代码:

package string;

public class InfiniteRecursion {
	
	@Override
	public String toString() {
		//this关键字会调用this.toString()方法,产生递归
		//修改为super.toString()
		return "InfiniteRecursion : " + this;  
	}
	
	public static void main(String[] args) {
		InfiniteRecursion ir = new InfiniteRecursion();
		System.out.println(ir.toString());  //Exception in thread "main" java.lang.StackOverflowError
		
	}
	
}
//output
Exception in thread "main" java.lang.StackOverflowError
2. 分析:"InfiniteRecursion : " + this 表示字符串连接,会调用this.toString()方法,产生递归

相关文章

    暂无相关文章

用户点评