toString()是Java中的一个内置方法
如果你在类里编写了toString,相当于覆盖了类中原有的toString
在System.out.print中会自动调用

解决方案 »

  1.   

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

  2.   

    类对象只会自动toString(),不会自动调用其他方法。
      

  3.   

    会,可以查看一下PrintStream的源代码,就很清楚了
      

  4.   

    类对象只会自动toString(),不会自动调用其他方法。你和楼下的说法不一样啊,不知道该听谁的类对象只会自动toString(),不会自动调用其他方法。为什么啊?
      

  5.   

    首先JAVA所有对象都继承自object,object里面就有toString方法,你要是不重写这个方法的话,就默认调用父类toString方法,这时打印出来是类名@加内存地址,重写之后就打印你返回的字符串至于为什么要打印toString返回的值就要问语言设计的人了
      

  6.   

    上面的代码等同于 public static void main(String[] args){
            ObjectInstance obj = new ObjectInstance();
            System.out.println(obj.toString());
    }
    结果是输出当前类的类名.
    System.out.println(new ObjectInstance());   会默认调用toString()方法.
    就像你定义一个  int i;     它的默认值会是0一样的
      

  7.   

    System的out方法获得一个PrintStream对象,PrintStream对象的println方法源代码:public void println(Object x) {
        String s = String.valueOf(x);
        synchronized (this) {
            print(s);
            newLine();
        }
    }
    String类的valueOf方法的源代码:public static String valueOf(Object obj) {
        return (obj == null) ? "null" : obj.toString();
    }
    所以如果传给println方法是一个对象,就调用这个对象的toString方法
      

  8.   

    public class ObjectInstance{
       public String toString(){
           return "在"+getClass().getName()+"类中重写toString()方法";
    }
      public class static void main(String []args){
          System.out.println(new ObiectInstance());
    }
    }
    ObjectInstance这个类中复写了所有类的父类Object中的toString()方法。当创建一个新的对象的时候,并没有什么特别,只是一个匿名对象的创建,但是System.out.println这个方法的输出会自动调用这个对象的toString()方法,因为在类中已经复写了这个方法,复写的方法会被调用。所以会输出“在ObjectInstance类中重写了toString()方法”。getClass().getName()这个地方使用了反射获得当前对象。
      

  9.   


    你目前这个代码只要求打印toString 这个方法  所以就只会打印这个方法  至于其它的方法 应该会在内存中加载 毕竟你创建了一个实例
      

  10.   


    你目前这个代码只要求打印toString 这个方法  所以就只会打印这个方法  至于其它的方法 应该会在内存中加载 毕竟你创建了一个实例哦,谢谢了啊
      

  11.   

    tostring   或者   序列化 吧
      

  12.   

    如果类中还有其他方法,会被执行吗?System.out.println()这个方法就是会调用对象的toString()方法,这个方法来自于Object类,每一个对象被创建后都有,一个对象被创建后可以调用父类中的其他方法,这个要看具体情况。
      

  13.   

    除了toString方法外向一些父类中线程相关的方法也会被调用。
      

  14.   

    如果直接输出对象的话是调用object类的toString方法,输出的是该对象的内存地址;如果在子类中覆写toString方法的话,则调用的是你写的方法;