黑马程序员技术交流社区
标题:
多态的调用基础知识总结
[打印本页]
作者:
陈圳
时间:
2013-2-26 16:39
标题:
多态的调用基础知识总结
package Day16;
class F
{
int num=3;
void print()
{
System.out.println("F num="+this.num);
}
public static void show()
{
System.out.println("F static show()");
}
}
class Z extends F
{
int num=4;
void print()
{
System.out.println("Z num="+this.num);
}
public static void show()
{
System.out.println("Z static show()");
}
}
class Test2
{
/*子父类继承多态的三种情况
1:子父类中同名变量,当多态创建子类对象调用方法时,调用的是谁的变量
2:成员函数
3:静态函数*/
public static void main(String[] args)
{
F f=new Z();
f.print(); //1:当子父类有同名变量时,编译运行都看左边
//打印结果:F num=3;前提:子类print()没有复写父类print();
f.print(); //2:当子父类有同名函数时,子类复写了父类的print()方法;编译看左边,运行看右边
//打印结果:Z num=4
f.show(); //3:当子父类有静态同名函数时,调用show()方法 编译运行都看左边
//打印结果:F static show()
}
}
复制代码
这个知识点比较基础,但是对刚接触面向对象的可能不明白.光看那个编译运行看哪边太笼统.这里总结了一下.并以代码演示.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2