2013-06-27 9 views
7

क्या कोई विस्तार कर सकता है कि जावा में नल इंटरफ़ेस और मार्कर इंटरफ़ेस के बीच मुख्य अंतर क्या है। मुझे इस सवाल को साक्षात्कार में से एक में पूछा गया है।नल बनाम मार्कर इंटरफेस

धन्यवाद।

+1

एक 'अशक्त interface' क्या है? मुझे केवल 'शून्य' के बारे में पता है, क्या यह आपकी परिभाषा से एक शून्य इंटरफ़ेस है? –

+0

मार्कर इंटरफ़ेस का उपयोग क्या है? जब हमें मार्कर या शून्य इंटरफ़ेस के लिए जाना चाहिए? क्या कोई समझा सकता है? –

उत्तर

5

अशक्त इंटरफ़ेस के बारे में मेटाडेटा की घोषणा करने के लिए एक ही रास्ता थे मार्कर इंटरफ़ेस अथवा इसके विपरीत के लिए सिर्फ एक और नाम है। जहां तक ​​मुझे पता है, वे एक दूसरे के रूप में उपयोग किया जाता है।

ये केवल इंटरफ़ेस हैं जिनमें उनमें कोई विधि नहीं है। मार्कर इंटरफेस के उदाहरण हैं: Serializable, Cloneable

+0

मार्कर इंटरफ़ेस का उपयोग क्या है? जब हमें मार्कर या शून्य इंटरफ़ेस के लिए जाना चाहिए? क्या कोई समझा सकता है? –

1

शून्य इंटरफेस मार्कर इंटरफेस हैं, उनके पास फ़ंक्शन घोषणाएं नहीं हैं, वे खाली इंटरफेस हैं, यह संकलक को व्यक्त करना है कि उन्हें अलग-अलग इलाज किया जाना चाहिए।

2

शून्य इंटरफेस मार्कर इंटरफेस के लिए एक और नाम है। ऐसा इंटरफ़ेस खाली है, यानी बिना किसी विधि घोषणा के।

उदाहरण के लिए जावा में सीरियलज़ेबल, क्लोनेबल क्लास। जावा के पिछले संस्करणों में, मार्कर इंटरफेस एक वर्ग

0

शून्य इंटरफ़ेस मार्कर इंटरफ़ेस का उदाहरण है।

इंटरफेस विभिन्न प्रकार हैं। जो मुख्य रूप से इंटरफेस, मार्कबल इंटरफ़ेस और मार्कर इंटरफेस का विस्तार कर रहे हैं।

मार्कर इंटेफेस और अन्य का अंतर यह है कि मार्कर इंटरफेस के पास कोई तरीका नहीं है .. उदाहरण हैं; - serializable - serialization के लिए। रिमोट विधि संचार के लिए दूरस्थ। आपके रिमोट इंटरफेस को इस मार्कर इंटरफ़ेस को विस्तारित करना होगा। जब आपका रिमोट इंटरफ़ेस मार्कर इंटरफ़ेस बढ़ाता है तो इसे विस्तार इंटरफ़ेस कहा जाता है।

वे सिर्फ संकलक को बताते हैं कि इस वर्ग की वस्तुओं को अलग-अलग इलाज करने की आवश्यकता है। कुछ मार्कर इंटरफेस हैं:, Serializable रिमोट, Cloneable

कोड:

interface markerImp 
{ 


} 

class MarkerTest implements markerImp 
{ 

} 

public class TestInstanceOf 
{ 

public static void main(String []args) 
{ 
    MarkerTest mt = new MarkerTest(); 
    if(mt instanceof markerImp) 
{ 
    System.out.println("True"); 
} 
else 
{ 
    System.out.println("False"); 
} 
} 
} 
संबंधित मुद्दे