अपने आप से पूछें कि आप क्यों लगता है कि यह अजीब बात है कि एक प्रकार है कि आम तौर पर स्टैक पर आवंटित किया जाता है System.Object
से विरासत हैं और मुझे लगता है कि आप आपके पास उचित कारण तैयार नहीं कर सकते हैं मिल जाएगा।
यदि आपको लगता है कि ऐसा इसलिए है क्योंकि किसी ऑब्जेक्ट का टाइप परिभाषित करता है कि यह कहां आवंटित किया गया है, तो आप गलत हैं। ValueType
का सदस्य अपने आवंटन तंत्र को परिभाषित करने के लिए ज़िम्मेदार है? एक string
उदाहरण के लिए, एकobject
है: (क्या सदस्य System.Object
की, उस बात के लिए)
प्रकार विरासत .NET में शामिल करने के लिए रिश्तों को "एक कि" माना जाता है। नेट दुनिया में सब कुछ एक object
आदि
आप Liskov substitution principle के संदर्भ में इस बारे में सोच सकते है, इसलिए एक int
एक object
, एक double
एक object
है,: अगर मैं कोड लिखने कि उम्मीद object
, मुझे किसी भी से निपटने में सक्षम होना चाहिए कि object
-ie कुछ भी है। मेरे कोड एक string
, एक int
, एक List<int>
, साथ समान रूप से सहज होना चाहिए आदि
भी ध्यान रखें कि object
की गारंटी देता है कुछ सदस्यों सभी प्रकार इस का एक परिणाम के रूप में है: GetType
, ToString
, और GetHashCode
।
स्रोत
2011-01-18 21:23:46
Possi ब्ली डुप्लिकेट .... http: //stackoverflow.com/questions/436211/is-everything-in-net-an-object/436246 –
आपके सभी प्रकार हमारे हैं! –