【发布时间】:2015-03-24 19:08:20
【问题描述】:
interface My
{
void show();
}
class Child implements My
{
public void show()
{
System.out.println("hello from show");
}
public String toString()
{
System.out.println("Hello from toString");
return "hello";
}
public static void main(String s[])
{
My m = new Child();
m.show();
m.toString();
}
}
**上面代码中m是My接口的引用变量,toString()方法是Object类的,已经被Child类覆盖了,但是My类型的引用变量怎么会调用toString()方法(我的接口中不存在 toString 的原型),如果我尝试使用 m 调用 Child 类的其他人员方法,则会出现编译错误,但在这种情况下不会发生。为什么这样? **
【问题讨论】:
标签: java