java里toString方法到底有什么作用呀?比如下面这两个用toString方法和不用toString方法到底有什么区别。?我搞不清楚……

解决方案 »

  1.   


    重写tostring方法,用system.out.print(Ceshi) 打印你的类名是输出的是重写tostring的return部分,不重写的话默认tostring输出的是类的名字和内存地址的形式。
      

  2.   

    它通常只是为了方便输出,比如System.out.println(xx),括号里面的“xx”如果不是String类型的话,就自动调用xx的toString()方法
    总而言之,它只是sun公司开发java的时候为了方便所有类的字符串操作而特意加入的一个方法
      

  3.   

    首先你要明白所有的类都有个超类 就是Object 也就是 所有类都默认继承Object 或者间接继承。既然是继承那么子类就继承了父类的方法。
    Object 有 toString() 方法 返回的是 (类名 + @ +hashcode)字符串。
    类Ren1 重写了继承父类的toString() 方法 所以调用的时候不显示父类的返回值。
    类Ren 没有重写如果调用toString() 方法 就会显示(类名 + @ +hashcode值)的字符,
    为什么一样是因为你打印Ren的属性跟 Ren1的toString()里的方法体一样。
      

  4.   

    java所有类的父类是Object类,toString()是Object类的方法,如果你没有进行重写操作,调用toString()返回的是你这个对象在堆内存中的物理地址信息;如果进行了重写,返回的是你重写后的信息;一般重写后用于开发时,数据的打印查看
      

  5.   

    单独说这个方法不就是返回指定对象的String字符串表现形式?!感觉其他人说的好复杂……举个例子,有一个数组a,你直接打印这个a不会看到数组a里面的元素,但是如果你打印a.toString()则会返回这个数组里面的所有元素