2013-02-15 39 views
10

के अंदर इंटरफ़ेस घोषित करने की सुविधा प्रदान करता है मैं आंतरिक कक्षाओं के विभिन्न संयोजन की कोशिश कर रहा हूं। मुझे आश्चर्य है कि जावा आपको इंटरफ़ेस के अंदर इंटरफ़ेस लिखने की सुविधा देता है। यह मुझे कोई संकलन समय त्रुटि नहीं देता है। क्या कोई मुझे बता सकता है कि इसका क्या उपयोग है?क्यों जावा इंटरफ़ेस

public interface IA { 

    public interface IB{ 

    } 
} 

उत्तर

9

यह आपको उप-इंटरफेस को एक नामस्थान में रखने में सक्षम बनाता है जो एक अलग पैकेज से अधिक समझ में आता है। जावा एपीआई से इसका एक अच्छा उदाहरण Map.Entry इंटरफ़ेस है। केवल Map इंटरफ़ेस को लागू करने के संदर्भ में वास्तव में समझ में आता है, इसलिए इसे इंटरफ़ेस के अंदर एक इंटरफ़ेस के रूप में परिभाषित किया जाता है।

ध्यान दें कि भीतरी कक्षाएं साथ के अलावा अन्य, भीतरी इंटरफेस हमेशा स्थिर रहे हैं, के रूप में जेसी ग्लिक एक related question करने के लिए his answer में उल्लेख है।