Chinaunix首页 | 论坛 | 博客
  • 博客访问: 350744
  • 博文数量: 88
  • 博客积分: 1673
  • 博客等级: 上尉
  • 技术积分: 934
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-20 13:51
文章分类

全部博文(88)

文章存档

2016年(1)

2015年(4)

2014年(3)

2013年(7)

2012年(11)

2011年(1)

2009年(61)

我的朋友

分类: Java

2009-07-22 16:31:23

     虽然java.lang.Objiect已经提供了toString()方法的实现,但是她所返回的字符串通常不是用户所期望看到的,也就是说他在绝大多数情况下的输出的内容并不能满足我们的要求,没有包含我们所需要的一些内容。

     对于这个通用的toString()方法,他所产生的字符串包含三分小部分:类的名字、一个“@”符号以及一个无符号十六进制的数列码。通常的形式为:Base@12b4c9。所以,这麽少的信息肯定不能满足我们的各种复杂需求。

     对于toString()方法,他返回的字符串应该是简洁的,但所包含的信息是非常丰富的,并且很易于阅读,使我们可以非常方便的了解到该实体对象当时的状态。虽然,对于一个实体对象的toString()方法的实现并没有很严格的规定,但是提供一个号的toString()方法的实现,可以使我们在使用这个类时更加的方便。

    当一个对象被传递给print()方法、字符串连接操作符(+)以及assert时,被传递对象的toString()方法将会被自动调用。如果这是提供一个好的toString()方法,那么对于产生一个好的提示信息将会是非常方便的,有利于调适工作的警醒,例如:

  System,out.println("Base:\t"+base);

   这是很多程序员都非常习惯的调试方法,用它输出的base对象的一些信息,如果实现了toString()方法,那么输出的信息的形式可能为:base:【id=1234567】,而如果使用的是默认的toString()方法,那么得到的结果可能是Base:Base@1b2f3d。通过这个信息除了可以判断出该对象不为空外,得不到该对象的任何其他信息,这不是我们想要的结果:

    实现一个对象的toString()方法,最好遵循以下的原则:

  1、toString()方法应该包含所有的令人感兴趣的信息,也就是说包含的内容应该全面,通过输出的内容那能够了解这个对象的所有信息。

    2、要注意一个良好的表现格式,虽然不要求非常完美,输出的信息应该是可读的,能明确的表达你的意图。

3、要采集用通用的发放来实现toString()方法,不要依赖于对象中的一些具体实现,否则你的toString()方法就要遵循业务实现的修改而不断的进行修改。

最后,再一次建议大家在实现对象的时候要实现toString()方法,这样会给编程和调试工作带来很到的建议

      

阅读(1981) | 评论(0) | 转发(0) |
0

上一篇:DISTINCT

下一篇:rpm包的安装与卸载

给主人留下些什么吧!~~