Java 复习
调用的时候是动态绑定调用重写的子类方法 背下来 父类对象的引用指向子类对象就是动态绑定
动态绑定满足三个条件:
1。需要有继承的存在。
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
2。需要有方法的重写。
重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!
3。父类引用指向子类对象。(Java 转型问题、Java多态的一种体现)
父类引用指向子类对象,而子类引用不能指向父类对象。
public class Father {
public void say(){
System.out.println("Father");
}
public static void action(){
System.out.println("爸爸打儿子!");
}
}
class Son extends Father{
public void say(){
System.out.println("Son");
}
public static void action(){
System.out.println("打打!");
}
public static void main(String[] args){
//父类引用指向子类对象,意思是父类引用指向子类对象,这是Java多态的一种体现
Father f = new Son();
f.say();
f.action();
}
}