क्या मेरा मतलब है:एक इंटरफ़ेस अन्य इंटरफ़ेस को कार्यान्वित क्यों नहीं कर सकता है?
interface B {...}
interface A extends B {...} // allowed
interface A implements B {...} // not allowed
मैं इसे googled और मैं this पाया:
implements
अर्थ है एक अंतरफलक के तरीकों के लिए एक कार्यान्वयन को परिभाषित। हालांकि इंटरफेस में कोई कार्यान्वयन नहीं है, इसलिए यह संभव नहीं है।
हालांकि, इंटरफेस एक 100% अमूर्त वर्ग है, और एक सार वर्ग अपनी विधियों को लागू किए बिना इंटरफेस (100% अमूर्त वर्ग) को कार्यान्वित कर सकता है। जब यह "इंटरफेस" के रूप में परिभाषित किया जाता है तो समस्या क्या होती है?
विवरण में,
interface A {
void methodA();
}
abstract class B implements A {} // we may not implement methodA() but allowed
class C extends B {
void methodA(){}
}
interface B implements A {} // not allowed.
//however, interface B = %100 abstract class B
जावा 8 के रूप में, इंटरफेस डिफ़ॉल्ट तरीकों हो सकता है, उन्हें भी बहुत कुछ है कि संबंध में सार वर्गों के समान बनाने:
यहाँ MyAbstractClass का एक उदाहरण उपवर्ग है। – forresthopkinsa
अंतिम वाक्य के लिए धन्यवाद! –