class a{
void display(){
System.out.println("display1");
}
}
class b extends a{
void display(){
System.out.println("display1b");
}
}
class c extends b{
void display(){
System.out.println("display1c");
}
}
class ab {
public static void main(String args[]){
a mn=new c();
mn.display();
}
}
这是后期绑定的示例,但是当我编译此代码然后使用 cavaj 反编译时,我发现此代码 ab.java:
class ab {
ab(){}
public static void main(String args[]){
c c1 = new c();
c1.display();
}
}
如果是后期绑定,那么编译器不必知道 display() 方法来自 c 类,但在这里它是知道的,因为它替换
了 mn=new c(); 与
c c1 = 新 c(); ,所以这是早期绑定??