1、父类的引用只能访问父类的成员
在继承关系中,在编译期父类的引用只能访问父类的成员,不能访问子类的扩展部分,否则编译错误。代码如下:
public class Father {
int age;
public void go() {}
public static void main(String[] args) {
Father obj = new Son();
obj.age = 56;
obj.go();
obj.weight = 162;//编译错误
obj.run();//编译错误
}
}
class Son extends Father{
int weight;
public void run() {}
}
分析:当父类的引用指向子类的对象时,在编译期父类的引用只能访问父类的成员,否则编译错误。老黑讲Java之面向对象方法的重载

5、编译期绑定和运行期绑定的概念
1.重载遵循编译期绑定,编译期是根据方法的参数变量类型和个数访绑定哪个方法;
2.重写遵循运行期绑定,运行期是根据对象类型访问重写的方法。