कंस्ट्रक्टर
क्लास कंस्ट्रक्टर एक क्लास का एक विशेष सदस्य फंक्शन होता है जिसे जब भी हम उस क्लास के नए ऑब्जेक्ट बनाते हैं तो उसे निष्पादित किया जाता है।
एक कंस्ट्रक्टर का नाम बिल्कुल वैसा ही होता है जैसा कि क्लास का होता है और इसका कोई रिटर्न टाइप नहीं होता है।
कंस्ट्रक्टर का वही नाम है जो क्लास का नाम है -
class Demo { public Demo() {} }
निम्नलिखित एक उदाहरण है -
उदाहरण
using System; namespace LineApplication { class Line { private double length; // Length of a line public Line() { Console.WriteLine("Object is being created"); } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(); // set line length line.setLength(6.0); Console.WriteLine("Length of line : {0}", line.getLength()); Console.ReadKey(); } } }
आउटपुट
Object is being created Length of line : 6
विनाशक
एक विध्वंसक एक वर्ग का एक विशेष सदस्य कार्य होता है जिसे तब निष्पादित किया जाता है जब उसकी कक्षा की कोई वस्तु दायरे से बाहर हो जाती है। यह न तो कोई मान लौटा सकता है और न ही कोई पैरामीटर ले सकता है।
इसका ठीक वैसा ही नाम है जैसा कि उपसर्ग वाले टिल्ड (~) वाले वर्ग का है, उदाहरण के लिए, हमारे वर्ग का नाम डेमो है -
public Demo() { // constructor Console.WriteLine("Object is being created"); } ~Demo() { //destructor Console.WriteLine("Object is being deleted"); }
आइए सी# में डिस्ट्रक्टर्स के साथ काम करने का तरीका जानने के लिए एक उदाहरण देखें -
उदाहरण
using System; namespace LineApplication { class Line { private double length; // Length of a line public Line() { // constructor Console.WriteLine("Object is being created"); } ~Line() { //destructor Console.WriteLine("Object is being deleted"); } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(); // set line length line.setLength(6.0); Console.WriteLine("Length of line : {0}", line.getLength()); } } }
आउटपुट
Object is being created Length of line : 6 Object is being deleted