C#的Console.WriteLine()问题

如果Console.WriteLine()的参数是一个类的实例,那么出现这个类所在的名称空间和其类名。但关键是这个类重写了ToString(),并返回字符串,控制台出现的... 如果Console.WriteLine()的参数是一个类的实例,那么出现这个类所在的名称空间和其类名。
但关键是这个类重写了ToString(),并返回字符串,控制台出现的内容就是返回的字符串的内容了,为什么???在Main()里没有一个这个ToString()的调用啊。。。
展开
 我来答
murphybao
推荐于2016-01-15 · TA获得超过1210个赞
知道小有建树答主
回答量:1002
采纳率:66%
帮助的人:545万
展开全部
因为WriteLine的参数是字符串类型的,你送其他类型的,就会尝试转为字符串类型,对类来说就是隐式调用ToString()
同一种情况是在Listbox中添加类,也会在列表中显示ToString()结果
类似的,你用类和字符串做连接操作(+),也会隐式调用ToString
lrh3321
2015-05-05 · TA获得超过2183个赞
知道大有可为答主
回答量:2296
采纳率:75%
帮助的人:2129万
展开全部
Console.WriteLine()在代码内部调用了这个实例的ToString()方法。
C#里所有类均直接或间接继承自System.Object,Object提供了可重写的ToString()方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式