जावा में, मैं इसे 'अंतिम' कीवर्ड से कर सकता था। मुझे सी # में 'अंतिम' नहीं दिख रहा है। क्या कोई विकल्प है?मैं कक्षा को सी # में विरासत में कैसे रख सकता हूं?
उत्तर
आप sealed
कीवर्ड खोज रहे हैं। यह जावा में कीवर्ड final
कीवर्ड करता है। उत्तराधिकारी के प्रयासों के परिणामस्वरूप संकलन त्रुटि होगी।
जैसा कि जोएल ने पहले से ही सलाह दी है, आप sealed
का उपयोग final
के बजाय सी # में कर सकते हैं।
http://en.csharp-online.net/CSharp_FAQ:_Does_CSharp_support_final_classes
भी अवगत "मुझे नहीं लगता कि किसी को भी कभी भी इस से विरासत की आवश्यकता होगी" है कि हो सकता है "सील" का उपयोग करने के लिए एक अच्छा कारण नहीं है। जब तक आपको यह सुनिश्चित करने की कोई विशिष्ट आवश्यकता न हो कि एक विशेष कार्यान्वयन का उपयोग किया जाता है, तो कक्षा को अनदेखा छोड़ दें।
sealed
कीवर्ड काम करेगा, लेकिन फिर भी आप प्रतिबिंब आईआईआरसी का उपयोग कर कक्षा से प्राप्त कर सकते हैं।
आप निजी सदस्यों को प्रतिबिंब के साथ भी एक्सेस कर सकते हैं। इसका मतलब यह नहीं है कि यह एक अच्छा विचार है – Kilhoffer
मुझे अत्यधिक संदेह है कि आप प्रतिबिंब का उपयोग कर कक्षा से प्राप्त कर सकते हैं। अगर कोई मुझे System.String से प्राप्त कक्षा दिखाता है, तो मुझे विश्वास होगा - लेकिन तब तक ... –
प्रतिबिंब के माध्यम से विरासत? मैं यह भी नहीं देखता कि यह कैसे काम करेगा या सीएलआर अगर आपने कोशिश की तो भी कोई ध्यान देना होगा। क्या आप उस दावे पर विस्तार कर सकते हैं? –
sealed
संशोधक जावा में final
करता है जो करेगा।
इसके अलावा, हालांकि यह संभवतः आप इस स्थिति में जो खोज रहे हैं वह नहीं है, static
के रूप में कक्षा को चिह्नित करने से इसे विरासत में रखा जाता है (यह दृश्यों के पीछे सील हो जाता है)।
- 1. मैं सी में पाइथन कक्षा कैसे बना सकता हूं?
- 2. मैं जेटीबल के जेटीबलहेडर में नियंत्रण कैसे रख सकता हूं?
- 3. मैं लेटेक्स में एक आकृति कैसे रख सकता हूं?
- 4. मैं node.js कॉलबैक में दायरा कैसे बनाए रख सकता हूं?
- 5. मैं मोंगोस स्कीमा में वर्तमान टाइमस्टैम्प कैसे रख सकता हूं?
- 6. मैं RegExp जावास्क्रिप्ट में [] (वर्ग ब्रैकेट) कैसे रख सकता हूं?
- 7. मैं monodevelop3.0.6 कैसे अपडेट कर सकता हूं और ओएसएक्स में mono3.0.3 को बरकरार रख सकता हूं?
- 8. मैं सी फाइल में #defines को दस्तावेज करने से डॉक्सिजन कैसे रख सकता हूं?
- 9. पर्ल: मैं अपने सभी इनलाइन सी कोड को एक अलग फ़ाइल में कैसे रख सकता हूं?
- 10. मैं रेल में कक्षा-तालिका-विरासत को कैसे कार्यान्वित करूं?
- 11. जावास्क्रिप्ट में कक्षा विरासत
- 12. मैं एक्सटीएस को डेटा.फ्रेम में कैसे बदल सकता हूं और इंडेक्स को आर में रख सकता हूं?
- 13. पाइथन में कक्षा विरासत
- 14. मैं वर्तमान में चल रहे लिनक्स प्रक्रिया को पृष्ठभूमि में कैसे रख सकता हूं?
- 15. मैं सिल्वरलाइट 3 डेटाग्रिडसेल को कोड में संपादन मोड में कैसे रख सकता हूं?
- 16. मैं आईफोन में UITextField में पहले अक्षर को छोटा कैसे रख सकता हूं?
- 17. टीसीपीडीएफ: मैं एक छवि को HTML ब्लॉक में कैसे रख सकता हूं?
- 18. मैं विरासत के बिना वस्तुओं को कैसे नकल कर सकता हूं (सी में)?
- 19. मैं अपलोड की गई छवि को फ़ॉर्म सत्यापन त्रुटि पर "रख" कैसे रख सकता हूं?
- 20. क्या मैं उद्देश्य-सी में थोड़ी देर लूप में "ब्रेक"/"जारी रख सकता हूं"?
- 21. मैं सी # में कक्षा ए कैसे बना सकता हूं, जहां ए को केवल बी, सी, डी द्वारा विरासत में प्राप्त किया जा सकता है?
- 22. मैं अपना हेरोोक एप्लिकेशन निजी कैसे रख सकता हूं?
- 23. मैं अपने सॉफ्टवेयर प्रोजेक्ट को कैसे खोल सकता हूं और नियंत्रण रख सकता हूं?
- 24. मैं निम्नलिखित रीडायरेक्ट से WWW :: मैकेनाइजेशन कैसे रख सकता हूं?
- 25. मैं नॉकआउट के सरणी को कैसे तोड़ सकता हूं या जारी रख सकता हूं?
- 26. मैं सी # में SQL क्वेरी के परिणामों से कक्षा को कैसे पॉप्युलेट कर सकता हूं?
- 27. मैं सी ++ में इंटरफेस कैसे अनुकरण कर सकता हूं?
- 28. मैं एक गिट भंडार कैसे क्लोन कर सकता हूं और रिमोट्स रख सकता हूं?
- 29. क्या मैं कक्षा को अनदेखा कर सकता हूं लेकिन बाहरी रूप से सील कर सकता हूं?
- 30. मैं तैनाती के दौरान डेटा को सिंक में कैसे रख सकता हूं?
मैं असहमत हूं। विरासत अक्सर दुरुपयोग किया जाता है, और अधिकांश वर्गों को विरासत में विरासत में कोडित नहीं किया जाता है। इसलिए, जब तक कि एक वर्ग विरासत में नहीं बनाया गया था, इसे डिफ़ॉल्ट रूप से बंद कर दिया जाना चाहिए। फिर, जब कोई आपकी मुहरबंद कक्षा से वंचित हो जाता है, तो यह उन्हें इसके बारे में थोड़ा और सोचने के लिए मजबूर कर सकता है। –
मैं रॉबर्ट से सहमत हूं (यानी मैं मार्क से असहमत हूं)। विरासत ऐसा कुछ है जो सावधानीपूर्वक विचार करने का एक बड़ा सौदा करता है। उदाहरण के लिए, जब भी आप किसी वर्चुअल विधि को दूसरे से कॉल करते हैं, तो आप उस कार्यान्वयन को लॉक कर रहे हैं - कॉल को दूसरे तरीके से बदलने के लिए व्युत्पन्न कक्षाएं तोड़ सकती हैं। –
यह ** ** ** प्रदर्शन के साथ मदद करता है। – MagicKat