Java中静态绑定和动态绑定之间的区别

绑定是一种在方法调用和方法实际实现之间创建链接的机制。按照Java中的多态性概念,对象可以具有许多不同的形式。对象形式可以在编译时和运行时解析。如果在编译时解决了方法调用与方法实现之间的链接,则我们将其称为静态绑定;如果在运行时解决了其方法,则将其称为动态绑定。动态绑定使用对象来解析绑定,而静态绑定使用类和字段的类型。 

序号

静态绑定
动态绑定

1

基本的 

在编译时解决 

在运行时解决 

2

        解决机制 

 类和字段的静态绑定使用类型

动态绑定使用对象来解析绑定 

3

例 

重载是静态绑定的一个示例 

方法覆盖是动态绑定的示例 

4。

方法类型 

私有,最终和静态方法和变量使用静态绑定

虚方法使用动态绑定 

静态和动态绑定示例

public class FastFood {

   public void create() {

      System.out.println("Creating in FastFood class");

   }

}

public class Pizza extends FastFood {

   public void create() {

      System.out.println("Creating in Pizza class");

   }

}

public class Main {

   public static void main(String[] args) {

      FastFood fastFood= new FastFood();

      fastFood.create();

      //动态绑定

      FastFood pza= new Pizza();

      pza.create();

   }

}

以上是 Java中静态绑定和动态绑定之间的区别 的全部内容, 来源链接: utcz.com/z/341110.html

回到顶部