मुझे आश्चर्य है कि अगर वहाँ जो एक वर्ग से विरासत को सीमित करना एक तरीका है।वहाँ जो एक वर्ग या अंतरफलक के वारिस कर सकते हैं सीमित करने के लिए कोई तरीका है?
internal
: कक्षा विधानसभाsealed
बाहर प्राप्त की जा करने के लिए अनुमति नहीं देता: वर्ग विरासत में मिला नहीं किया जा सकता
किसी कीवर्ड या जिस तरह से केवल कुछ वर्गों (मान लें कि यह है से जाने की अनुमति के लिए है उस नाम का उत्तराधिकारी केवल)?
इसके अलावा, मैं इस विशेष वर्ग सामान्य हो नहीं करना चाहती। मेरी चिंता का विषय सुरक्षा लेकिन सामान्य रूप में डिजाइन नहीं है।
जो मैं चाहता का उदाहरण:
- क्लास ए
- कक्षा बी ए
- कक्षा सी से विरासत जहाँ तक मुझे पता के रूप में एक
एक कक्षा आंतरिक बनाना न केवल बाहरी कक्षाओं को विरासत से रोकता है, बल्कि इसका उपयोग करने से भी रोकता है।बाहरी बालक्षकों को रोकने के लिए आपको विशेष चाल की आवश्यकता होती है, जैसे 'आंतरिक सार' विधियां, और यह इंटरफेस पर काम नहीं करती है। – CodesInChaos
आपको किस तरह की सीमा पसंद आएगी? क्या आपने इनहेरिटेंस डेमांड पर एक नज़र डाली है? http://palisade.plynt.com/issues/2006Apr/link-demand/ –
ध्यान दें कि किसी नामस्थान पर प्रतिबंधित करना बहुत अधिक सुरक्षा नहीं है, क्योंकि एक दुष्ट असेंबली केवल 'नेमस्पेस विस्मयकारी {सार्वजनिक वर्ग चोरी: गुप्त { }} 'और अब वे 'Awesome.Secret' तक पहुंचने के लिए' Awesome.Stolen' का उपयोग कर सकते हैं। –