代码如下:public class Objectinstance{
  public String toString()
     {
       return "在"+getClass().getName()+"类中重写toString()方法";
      }
   public static void main(String args[])
    {
       System.out.println(new Objectinstance());
    }
}为什么会直接输出:  在com.wsy.ObjectInstance类中重写toString()方法
 System.out.println(new Objectinstance())语句中只是实例化了对象,又没有调用Objectinstance类的toString()方法

解决方案 »

  1.   

    你打印的是一个对象。所以输出就会自动调用toString方法将对象转换成字符串。
      

  2.   

    这个是类的方法覆盖,java中所有的类都是继承了Object的,Object类有一个方法就是toString(),你这里又定义了一个方法toString()就是对这个方法进行覆盖,当你在println()方法的时候会自动调用这个toString()方法
      

  3.   

    因为覆盖了object的toString方法