我是java新手,在下面的代码中,我已经在两个不同的类之间加载了print方法
基于运行时的对象,只有对应的打印方法才是executed.If的。我的理解是正确的,那么我们怎么能说方法重载是静态多态呢?
class Parent
{
private int arg;
public void print(int arg)
{
this.arg=arg;
System.out.println(arg+"printed");
}
}
class Child extends Parent{
private String arg;
public void print(String arg)
{
this.arg=arg;
System.out.println(arg+"printed");
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Parent p1=new Parent();
Child ch=new Child();
p1.print(1);
ch.print("String");
}
}
请提前澄清me.Thanks
发布于 2015-06-29 16:22:09
试着阅读这篇文章,可能会消除您对多态性如何工作Can't access object in the array java的疑虑
发布于 2015-06-29 19:07:28
是的,这是编译时(静态)多态性-假设您可以编写如下代码:
Child ch=new Child();
ch.print(2015);
ch.print("String");
https://stackoverflow.com/questions/31120065
复制相似问题