java动态绑定如何理解?

概念

1、动态绑定是指在运行过程中根据对象的类型进行绑定。

2、JVM在运行过程中决定调用哪个对象的过程称为动态绑定。

动态绑定的过程

3、虚拟机提取对象实际类型的方法表,并搜索方法签名、调用方法。

实例

public class Main {
    public static void main(String[] args){
        A b = new B();
        b.print();
    }
}
 
class A{
    public void print(){
        System.out.println("A");
    }
}
 
class B extends A{
    @Override
    public void print(){
        System.out.println("B");
    }
}

java静态和动态绑定的对比:不同绑定的比较1、静态绑定发生在编译期,动态绑定发生在运行期。2、动态绑定的灵活性高于静态绑定,因为静态绑定是在编译过程中确定的,动态绑定在编译过程中不知道调用哪种方法。3、静态绑定调用方法比动态绑定快,因为静 ...