关于重写toString

Tony2251 2008-04-23 09:08:44
public String toString(){
return this + "@" + this.hashCode();
}
这样重写对不对?

为什么会转化为 下面的形式:

public String toString(){
return String.valueOf(this) + "@" + String.valueOf(this.hashCode());
}
...全文
208 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
songfantasy 2010-01-12
  • 打赏
  • 举报
回复
可以用toString()的eclipse插件
上善_若水 2010-01-12
  • 打赏
  • 举报
回复
Alawn2005 2008-04-23
  • 打赏
  • 举报
回复
我怎么看的这么费劲,toString()方法一般会在什么时候用到,它有什么用。给小弟指点指点
feizm 2008-04-23
  • 打赏
  • 举报
回复
人家递归有结束的时候,这个结束不了的~
[Quote=引用 8 楼 herowzz 的回复:]
多么经典的递归。。。
[/Quote]
haoxiongok 2008-04-23
  • 打赏
  • 举报
回复
楼主是在调用自己当前方法了,所以不行。
herowzz 2008-04-23
  • 打赏
  • 举报
回复
多么经典的递归。。。
richard_2010 2008-04-23
  • 打赏
  • 举报
回复
相当于无穷尽的调用自己重写的方法
LZ早点结贴哦
Tony2251 2008-04-23
  • 打赏
  • 举报
回复
谢谢1楼2楼~
wenzheng38 2008-04-23
  • 打赏
  • 举报
回复
哈哈,一楼的抢SF了
guoxyj 2008-04-23
  • 打赏
  • 举报
回复
up
zealVampire 2008-04-23
  • 打赏
  • 举报
回复
会递归死。。
this + "@" 好像是相当于this.toString() + "@" 。。。。。
beiouwolf 2008-04-23
  • 打赏
  • 举报
回复
this代表的是对象本身
而且隐式转换中,采用 “+ ”连接字符串的话,首先调用的就是对象的toString方法
也就是

public String toString(){
return this.toString() + "@" + this.hashCode();
}

你在重写toString方法的同时,又怎么能调用这个方法?

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧