आपकी ऑफलाइन सहायता

BACK
49

सी प्रोग्रामिंग

149

पाइथन प्रोग्रामिंग

49

सी प्लस प्लस

99

जावा प्रोग्रामिंग

149

जावास्क्रिप्ट

49

एंगुलर जे.एस.

69

पी.एच.पी.
माय एस.क्यू.एल.

99

एस.क्यू.एल.

Free

एच.टी.एम.एल.

99

सी.एस.एस.

149

आर प्रोग्रामिंग

39

जे.एस.पी.





डाउनलोड पी.डी.एफ. ई-बुक्स
Java - 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