本人菜鸟不是很明白书上说的toString()的一些相关方法介绍,希望高人帮我解答,小弟在此谢过~!!

解决方案 »

  1.   

    toString()方法 是来自于根类 object的方法
    所以任何对象都自动拥有此方法
    当你直接打印对象时,会打印其堆里的内存地址(object默认行为)
    如果重写了toString() 那么则会调用次方法 
    可以看作是动态绑定.
      

  2.   

    toString
    public String toString()返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂。建议所有子类都重写此方法。 
    Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于: getClass().getName() + '@' + Integer.toHexString(hashCode())
     
    返回:
    该对象的字符串表示形式。这是api的说法,一般类会重写这个方法。
      

  3.   

    toString是object类的成员方法。大家都知道object是所有类的超类。
    public class c1{
        c1 c=new c1();
        public static void main(String[] args){
             System.out.println(c);
        }
    }
    如果print(c)打印出来的是类名和散列代码(散列码是什么就不用知道了吧,几乎是用不到的吧,当然是我觉得),我们也可以重写toString。
    public class c1{
    c1 c=new c1();
    public String toString()
        {return ("this's c1.");)}
    public static void main(String[] args){
             System.out.println(c);
        }}
    这个时候print(c)输出的是this's c1.
      

  4.   

    不同对象的toString 有不同的意义
    多看看api的介绍
      

  5.   

    int i= 11;
    String s = Integer.toString(i); 
    int转String
      

  6.   

    Date d=new Date();
    System.out.println(d);//输出时,是输出2008-07-23好,还是输出getClass().getName() + '@' + Integer.t… 好?所以要重写TOSTRING方法。