深入剖析:Java静态与动态绑定的较量
不同绑定的比较
1、静态绑定发生在编译期,动态绑定发生在运行期。
2、动态绑定的灵活性高于静态绑定,因为静态绑定是在编译过程中确定的,动态绑定在编译过程中不知道调用哪种方法。
3、静态绑定调用方法比动态绑定快,因为静态绑定可以直接调用,动态绑定需要搜索方法表。
实例
-
- class Super{
- public static void sample(){
- System.out.println("This is the method of super class");
- }
- }
- Public class Sub extends Super{
- Public static void sample(){
- System.out.println("This is the method of sub class");
- }
- Public static void main(String args[]){
- Sub.sample()
- }
- }
复制代码
(2)动态绑定
-
- class Super{
- public void sample(){
- System.out.println("This is the method of super class");
- }
- }
- Public class extends Super{
- Public static void sample(){
- System.out.println("This is the method of sub class");
- }
- Public static void main(String args[]){
- new Sub().sample()
- }
- }
复制代码
以上就是java静态和动态绑定的对比,希望对大家有所帮助。更多Java学习指路:Java基础
本教程操作环境:windows7系统、java10版,DELL G3电脑。
|