ASK A QUESTION

    Static and Dynamic Binding in Hindi

in Hindi - Static and Dynamic Binding




Program में method के call से method की definition को जोड़ना Binding होता है |

Reference Variable और Object क्या है ?

Class का Reference Variable

यहाँ पर s ये Sample class का reference variable है |

class Sample{
	public static void main(String args[]){
		Sample s;
		// s is a reference variable of Sample
	}
}

Class का Object

यहाँ पर B class का object बनाया गया है | लेकिन A class inherit होने की वजह से ये उसका भी Object है |

class A{
	--------
}
class B extends A{
	public static void main(String args[]){
		B b;    // b is a reference variable of class B
		b = new Sample();  //instance/object of class B also 
                           //instance/object of class A  

Java में Binding के दो प्रकार है |

  1. Static Binding
  2. Dynamic Binding

1. Static Binding

Static Binding को Early Binding भी कहा जाता है | जब compile-time पर compiler द्वारा object निश्चित होता है , इसे Static Binding कहते है |

जिस class में private, static या final method होता है वहा पर Static Binding होती है |

Compile-Time पर method को override नहीं किया जा सकता | ये methods अपने object से access होते है |

Example for Static Binding

Source Code :
class A{
	
	static void disp(){
		System.out.println("class A");
	}  
}
class B extends A{
	static void disp(){
		System.out.println("class B");
	}
	public static void main(String args[]){
	 
	A a = new A();
	B b = new B();
	a.disp();
	b.disp();
	}  
}
Output :
class A
class B

2. Dynamic Binding

Dynamic Binding को Late Binding भी कहा जाता है | ये Binding Compiler द्वारा compile-time पर नहीं होता | यहाँ पर classes के पास same methods होते है | यहाँ पर Method Override होता है | यहाँ पर दोनों classes के अन्दर एक ही signature का methods है |

Source Code :
class A{
	
	void disp(){
		System.out.println("class A");
	}  
}
class B extends A{
	void disp(){
		System.out.println("class B");
	}
	public static void main(String args[]){
	 
	A a = new B();
	a.disp();
	}
}
Output :
class B