آشنایی با constructor و category ها در #C

در این مقاله با تعدادی از انواع constructor ها آشنا می شویم

constructor یک نوع خاصی از متد می باشد که ما را برای ایجاد یک شئی قادر میسازد .constructor اغلب برای public استفاده می شوند زیرا آنها برای ایجاد یک شئی استفاده می شوند .در ادامه یک مثال از constructor ذکر شده :

    Class Rectangle  
      
    {  
      
        Public int length;  
      
        Public int width;  
      
        Public Rectangle(int x, int y) // constructor method  
      
        {  
      
            Length = x;  
      
            Width = y;  
      
        }  
      
        Public int RectArea()  
      
        {  
      
            Return(length * width);  
      
        }  
      
    }  

overload Constructor : همانند متد overload میباشد .برای ایحاد overload contructor ما باید چندین constructor با لیست های متعددی تعریف کنیم مانند مثال زیر :

    Class Room  
      
    {  
      
        Public double length;  
      
        Public double breadth;  
      
        Public Room(double x, double y) // first one  
      
        {  
      
            Length = x;  
      
            Breadth = y;  
      
        }  
      
        Public Room(double x) // second one  
      
        {  
      
            Length = breadth = x;  
      
        }  
      
    }  

انواع constructor ها :

اساساً 5 نوع constructor وجود دارد :

1 - Default Constructor : یک نوعی از constructor میباشد که بدون پارامتر است .اگر ما هیچ constructor در کلاس نساخته باشیم , به صورت خودکار میسازد .

2 - Parameterized Constructor : یک constructor که شامل یک یا دو پارامتر میباشد را parameterized constructor می گویند .

3 - copy constructor : یک شئی با استفاده از copy کردن مقادیر شئی دیگر ایجاد میکند .

4 - Static constructor : به عنوان یک کلاس برای دسترسی به کلاس خصوصی استفاده میشود .در کلاسی که private constructor میباشد نمی توانیم یک شئی ایجاد کنیم .همچنین در کلاسی که شامل private constructor باشد قابلیت ارثبری از آن کلاس وجود ندارد .

برخی از نکات مثبت در مورد Private Constructor :

1 - زمانی که اعضای ثابت داشته باشیم می توانیم از آن استفاده کنیم .

2 - برای ایجاد class pattern واحد استفاده می شود .

3 - اگر بخواهیم یک شئی از کلاسی که private constructor دارد ایجاد کنیم می توانیم به همراه این constructor ها نیز public constructor داشته باشیم .