晕了,这什么toString()啊!快来看看
public class testman
{
public static void main(String[] ag)
{
test x=new test1();
System.out.println(x);
}
}
class test
{
int i;
}
class test1 extends test
{
int j=10000;
public String toString()
{
System.out.println(j);
return "no";
}
}
输出结果:
1000
no
-----------------------------------------------------------
为什么会是这样??
我没有在test中写toString()函数啊。应该不会产生复写动作的
应该调用Object类的toString()啊。
假如是逻辑错误的话,那么下面这题怎么会报错呢??
public class testman
{
public static void main(String[] ag)
{
test x=new test1();
x.fun(); //报错
}
}
class test
{
int i;
}
class test1 extends test
{
int j=10000;
public void fun()
{
System.out.println("in test1");
}
}
-----------------------------
怎么回事??