Static Binding and Dynamic Binding

Learn the Static binding and Dynamic binding in Java:-

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

Binding as Two types

Static Binding (also known as Early Binding).
Dynamic Binding (also known as Late Binding).

Static Binding:

When type of the object is determined at compiled time(by the compiler), it is known as static binding.

If there is any private, final or static method in a class, there is static binding.

Example of static binding
class Dog{
private void eat(){System.out.println(“dog is eating…”);}

public static void main(String args[]){
Dog d1=new Dog();
d1.eat();
}
}

Dynamic Binding:

When type of the object is determined at run-time, it is known as dynamic binding.

Example of dynamic binding
class Animal{
void eat(){System.out.println(“animal is eating…”);}
}

class Dog extends Animal{
void eat(){System.out.println(“dog is eating…”);}

public static void main(String args[]){
Animal a=new Dog();
a.eat();
}
}

References:

https://www.javatpoint.com/