toString方法的调用

来源:互联网 发布:天刀好看少女捏脸数据 编辑:程序博客网 时间:2024/05/18 03:52
public class DeadLooper {public static void main(String[] args) {      System.out.println(new D());}}class D{@Overridepublic String toString() {return "abc"+this;}}


这时候,toString方法中会默认调用自己的toString方法,形成无限循环会变成死循环。

 

public class DeadLooper {public static void main(String[] args) {      System.out.println(new D());}}class D{@Overridepublic String toString() {return "abc"+new E();}}class E{@Overridepublic String toString() {return "def";}}

结果为:abcdef

结论:System.out.println(对象),这时候会调用对象的toString方法;在对象的toString方法里面,return “字符串”+对象,会调用对象的toString方法。

0 0
原创粉丝点击