oop
हीरे की समस्या
खोज…
हीरा समस्या - उदाहरण
डायमंड-प्रॉब्लम multiple-inheritance का उपयोग करते हुए ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में एक आम समस्या है।
उस मामले पर विचार करें जहां class C , class A और class B से विरासत में मिली है। मान लीजिए कि class A और class B दोनों में एक विधि है जिसे foo() कहा जाता है।
तब जब हम विधि foo() कह रहे हैं foo() , संकलक उस सटीक विधि की पहचान नहीं कर सकता है जिसका हम उपयोग करने का प्रयास कर रहे हैं
-
foo()class A -
foo()class B
इसे मूल रूप से हीरे की समस्या कहा जाता है। इस समस्या के कुछ संस्करण हैं। इससे बचने के लिए, कई दृष्टिकोण हैं। जावा कई उत्तराधिकार की अनुमति नहीं देता है। इसलिए समस्या से बचा जाता है। लेकिन C ++ मल्टीपल इनहेरिटेंस की अनुमति दे रहा है, इसलिए आपको मल्टीपल इनहेरिटेंस के उपयोग के लिए सावधान रहना चाहिए।
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow