zoukankan      html  css  js  c++  java
  • Dynamic Binding & Static Binding

    Reference: JavaPoint BeginnerBook

    What is Binding

    Connecting a method call to the method body is known as binding.

    There are two types of binding

    1. static binding (also known as early binding): binding solved at compile time
    2. dynamic binding (also known as late binding): binding solved at runtime

    Static Binding

    The binding which can be resolved at compile time by compiler is known as static or early binding.
    All the static, private and final methods have always been bonded at compile-time .

    • Why binding of Static, final and private methods is always a static binding?
    • Compiler knows that all such methods cannot be overridden and will always be accessed by object of local class. Hence compiler doesn’t have any difficulty to determine object of class (local class for sure). That’s the reason binding for such methods is static.

    Dynamic Binding

    When compiler is not able to resolve the call/binding at compile time, such binding is known as Dynamic or late Binding.
    Overriding is a perfect example of dynamic binding as in overriding both parent and child classes have same method. Thus while calling the overridden method, the compiler gets confused between parent and child class method(since both the methods have same name).

    Key Points

    1. Static binding happens at compile-time while dynamic binding happens at runtime.
    2. Binding of private, static and final methods always happen at compile time since these methods cannot be overridden. Binding of overridden methods happen at runtime.
    3. Java uses static binding for overloaded methods and dynamic binding for overridden methods.
  • 相关阅读:
    Linux netstat 命令入门知识
    Linux文件预读对系统的影响
    Ubuntu下配置Hadoop环境
    Debian Wheezy 安装Nginx+HHVM
    Linux Glibc库严重安全漏洞检测与修复方案
    关于系统时间的几个问题
    C语言的整型溢出问题
    Django Nginx配置
    linux上安装mysql5.7
    日期、时间选择器
  • 原文地址:https://www.cnblogs.com/ireneyanglan/p/4951498.html
Copyright © 2011-2022 走看看