输出一个对象,会默认执行toString()方法

今天在看编程思想时看到enum知识点时发现了这个小问题(可能我基础太差了)

如图

然后就一步一步的跟进源码发现了其中的奥秘,首先进入println()方法如下图

看图执行了valueOf()方法进行string转换,接着再看valueOf源码

如图当对象存在的时候会默认执行Object的toString()方法

因此结果就清晰明了啦!当输出对象时会默认执行toString方法。(完) 

作者: 不二尘
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/chenpt/p/8856073.html