*
* 多态中 成员函数 的特点:(非静态的,非静态有重写的特性),(静态的,子类不覆盖父类方法)。
* 编译时期:参阅引用型变量所属的类中是否有调用的方法。如果有,通过,没有,失败。
* 运行时期:参阅对象所属的类是否有调用的方法。
* 简单总结:成员函数在多态调用时,编译看左边,运行看右边。
*
* 多态中成员变量的特点:
* 简单总结:无论编译还是运行都看左边(引用型变量所属的类)。
*
* 多态中,静态成员函数的特点:(黑马,08天,05个视频讲解此特例)。
* 无论编译和运行,都参考左边。
*
*/
class Test{
public static void main(String[] args) {
Zi z=new Zi();
z.method4();
/*
z.method1();
z.method2();
z.method3();
*/
Fu f=new Zi();
f.method1();
f.method2();
//f.method3();
f.method4();
}
}
class Fu{
void method1(){
System.out.println("fu method1");
}
void method2(){
System.out.println("fu method2");
}
static void method4(){
System.out.println("fu method4");
}
}
class Zi extends Fu{
void method1(){
System.out.println("zi method1");
}
void method3(){
System.out.println("zi method3");
}
static void method4(){
System.out.println("zi method4");
}
}
/*
zi method4
zi method1
fu method2
fu method4
*/ |
|