System.Object (या object) C# में सभी क्लासेस का अल्टीमेट बेस क्लास है। प्रत्येक टाइप प्रत्यक्ष या अप्रत्यक्ष रूप से इससे विरासत में मिलता है।
Object क्लास के मुख्य मेथड्स
| मेथड | विवरण |
|---|---|
| Equals(Object) | निर्दिष्ट ऑब्जेक्ट वर्तमान ऑब्जेक्ट के बराबर है या नहीं |
| Equals(Object, Object) | दो ऑब्जेक्ट इंस्टेंसेस बराबर माने जाते हैं या नहीं (स्टैटिक) |
| Finalize() | गारबेज कलेक्शन से पहले रिसोर्स मुक्त करने के लिए (डिस्ट्रक्टर सिंटैक्स ~ClassName) |
| GetHashCode() | डिफ़ॉल्ट हैश फंक्शन (हैश टेबल्स के लिए) |
| GetType() | वर्तमान इंस्टेंस का रनटाइम टाइप लौटाता है |
| MemberwiseClone() | वर्तमान ऑब्जेक्ट की शैलो कॉपी बनाता है |
| ReferenceEquals(Object, Object) | दो ऑब्जेक्ट रेफरेंस एक ही इंस्टेंस को संदर्भित करते हैं या नहीं (स्टैटिक) |
| ToString() | वर्तमान ऑब्जेक्ट को दर्शाने वाली स्ट्रिंग लौटाता है |
उदाहरण
using System;
namespace MyApplication {
class Demo {
protected string name = "Website";
protected void Display(string str) {
Console.WriteLine("Tabs: " + str);
}
}
class Test : Demo {
static void Main(string[] args) {
Test t = new Test();
Console.WriteLine("विवरण: " + t.name);
t.Display("Product");
t.Display("Services");
t.Display("Tools");
t.Display("Plugins");
}
}
}
आउटपुट
विवरण: Website
Tabs: Product
Tabs: Services
Tabs: Tools
Tabs: Plugins
महत्वपूर्ण ओवरराइड्स:
- ToString(): हमेशा ओवरराइड करें - डिबगिंग/लॉगिंग के लिए सार्थक स्ट्रिंग
- Equals()/GetHashCode(): एक साथ ओवरराइड करें - कलेक्शन में सही व्यवहार के लिए
- Finalize(): केवल अनमैनेज्ड रिसोर्सेज के लिए;
IDisposableपैटर्न प्राथमिकता दें