Scala核心编程_第08章 面向对象编程(中级补充)--java动态绑定与静态绑定

一、问题

Java方法调用过程中,Jvm是如何知道调用的是哪个类的方法?Jvm又是如何处理?
 
二、概念
当子类和父类(接口和实现类)存在同一个方法时,子类重写父类(接口)方法时,程序在运行时调用的方法时,是调用父类(接口)的方法呢?还是调用子类的方法呢?我们将确定这种调用何种方法的操作称之为绑定。
绑定又分为静态绑定和动态绑定。
 
静态绑定
静态绑定是在程序执行前就已经被绑定了(也就是在程序编译过程中就已经知道这个方法是哪个类中的方法)。
在Java中,final、private、static修饰的方法以及构造函数都是静态绑定的,不需程序运行,不需具体的实例对象就可以知道这个方法的具体内容。

相关推荐