Tuesday 21 July 2015

Interface

इंटरव्यू में सबसे अधिक  पूछे  जाने वाले  सवालो में Interface सबसे ऊपर आता है जिसमे Tricky प्रश्न बन जाते है ,और स्टूडेंट्स भ्रमित हो जाते है
आज हम इंटरफ़ेस को पड़ते है ये core java  का पार्ट है परन्तु advance java के लिए भी बहुत महत्वपूर्ण है

क्या होता है इंटरफ़ेस ?
Interface is a class like construct
मतलब ये बिलकुल क्लास जैसा ही होता है परन्तु इसका उपयोग मुक्य रूप से निम्न हेतु किआ जाता है
  • It is used to achieve fully abstraction.
  • By interface, we can support the functionality of multiple inheritance.
  • It can be used to achieve loose coupling.
Rules to write interface  :

1.every data is : public static final
2.every method is :public abstract

Example : 
.....................................................
Interface IAlfa
{
     int a = 5;
     void fun();
}
......................................................
above example is same as
Interface IAlfa
{
    public static final int a = 5;
     public abstract  void fun();
}
.......................................................

पहले और दूसरे उदाहरण में कुछ अंतर जो दिखाई दे रहा है वो जावा का COMPILER add kar deta hai
यदि आप नहीं लिख रहे है तो |

यदि आप interface  को compile करते है तो आपको  .class  ही  मिलेगी।
Means for our IAlfa.java class we get IAlfa.class
(It is a good coding practice that you write interface name with initial I than name like IAlfa )

Note : Interface भी बिलकुलabstract class की तरह होता है जिसका हम Object क्रिएट नहीं कर सकते ।
तो फिर इस चीज का क्या महत्व है वो देखते है आगे..
१.  java में  multiple inheritance नहीं होता है परन्तु यदि हमे उसका उपयोग करना हो तो कैसे करेंगे ?
By Using इंटरफ़ेस कैसे ये देखिये
 multiple inheritance in java


२. Abstraction  का मतलब होता है संक्षेपण ,मतलब जरुरी चीजो को छोड़कर सारी  फालतू चीजो को न दिखाना 
यही हम abstraction  में करने वाले है                   

३. For Loose coupling हम आगे पड़ेंगे 
४