父类:
package extend;public class Father {public Father() {
}public String toInt(){
return "toInt()";
}public String toString(){
return "toString()";
}
}子类:package extend;public class Children extends Father {public Children() {
super();
}public static void main(String arg[]) {
Children c = new Children();
System.out.println(c);
}
}
请问System.out.println(c);输出是什么?
输出的结果是toString(),不知道是为什么,再线跪求指教。

解决方案 »

  1.   

    父类重写了toString方法,而子类没有重写这个方法,那子类当然只能调用父类的toString方法了.
      

  2.   

    我记得好像是 打印一个对象时 系统会自动掉用toString()函数 如果父类中有toString的实现 就直接调用了
      

  3.   


    儿子没有改写他老爸的toString()方法
      

  4.   

    当你需要一个字符串,而你只有一个对象时(c),就会调用toString方法。而你的父类改写了自己的默认toString方法。。儿子自然继承了 父类的toString方法。。所以就调用此方法了。。