C# – سازنده‌ها (Constructors)

سازنده‌ها (Constructors) در C#

سازنده‌ها (Constructors) متدهای خاصی هستند که برای مقداردهی اولیه به اشیاء استفاده می‌شوند. مزیت استفاده از سازنده این است که هنگام ایجاد یک شیء از یک کلاس، سازنده به‌طور خودکار فراخوانی می‌شود و می‌تواند مقادیر اولیه‌ای برای فیلدها تنظیم کند.

مثال: ایجاد یک سازنده

// ایجاد یک کلاس Car
class Car
{
  public string model;  // ایجاد یک فیلد

  // ایجاد یک سازنده برای کلاس Car
  public Car()
  {
    model = "Mustang"; // تنظیم مقدار اولیه برای فیلد model
  }

  static void Main(string[] args)
  {
    Car Ford = new Car();  // ایجاد یک شیء از کلاس Car (این کار سازنده را فراخوانی می‌کند)
    Console.WriteLine(Ford.model);  // چاپ مقدار فیلد model
  }
}

// خروجی: Mustang

توجه کنید که نام سازنده باید با نام کلاس مطابقت داشته باشد و سازنده نباید نوع بازگشتی (مانند void یا int) داشته باشد.

همچنین، دقت کنید که سازنده زمانی فراخوانی می‌شود که شیء ایجاد شود.

تمام کلاس‌ها به‌طور پیش‌فرض دارای سازنده هستند: اگر شما خودتان سازنده‌ای ایجاد نکنید، C# به‌طور خودکار یکی ایجاد می‌کند. اما در این صورت شما نمی‌توانید مقادیر اولیه‌ای برای فیلدها تنظیم کنید.

پارامترهای سازنده

سازنده‌ها همچنین می‌توانند پارامترهایی بپذیرند که برای مقداردهی اولیه به فیلدها استفاده می‌شوند.

مثال زیر یک پارامتر string به نام modelName به سازنده اضافه می‌کند. در داخل سازنده، مقدار فیلد model به modelName تنظیم می‌شود. زمانی که سازنده فراخوانی می‌شود، یک پارامتر به آن ارسال می‌کنیم که مقدار فیلد model را تنظیم می‌کند:

class Car
{
  public string model;

  // ایجاد یک سازنده با یک پارامتر
  public Car(string modelName)
  {
    model = modelName;
  }

  static void Main(string[] args)
  {
    Car Ford = new Car("Mustang");
    Console.WriteLine(Ford.model);
  }
}

// خروجی: Mustang

شما می‌توانید هر تعداد پارامتر که می‌خواهید داشته باشید:

class Car
{
  public string model;
  public string color;
  public int year;

  // ایجاد یک سازنده با چندین پارامتر
  public Car(string modelName, string modelColor, int modelYear)
  {
    model = modelName;
    color = modelColor;
    year = modelYear;
  }

  static void Main(string[] args)
  {
    Car Ford = new Car("Mustang", "Red", 1969);
    Console.WriteLine(Ford.color + " " + Ford.year + " " + Ford.model);
  }
}

// خروجی: Red 1969 Mustang

سازنده‌ها باعث صرفه‌جویی در زمان می‌شوند

اگر مثالی از فصل قبل را در نظر بگیرید، متوجه می‌شوید که سازنده‌ها بسیار مفید هستند، زیرا به کاهش حجم کد کمک می‌کنند:

بدون سازنده:

class Program
{
  static void Main(string[] args)
  {
    Car Ford = new Car();
    Ford.model = "Mustang";
    Ford.color = "red";
    Ford.year = 1969;

    Car Opel = new Car();
    Opel.model = "Astra";
    Opel.color = "white";
    Opel.year = 2005;

    Console.WriteLine(Ford.model);
    Console.WriteLine(Opel.model);
  }
}

با استفاده از سازنده:

class Program
{
  static void Main(string[] args)
  {
    Car Ford = new Car("Mustang", "Red", 1969);
    Car Opel = new Car("Astra", "White", 2005);

    Console.WriteLine(Ford.model);
    Console.WriteLine(Opel.model);
  }
}

استفاده از سازنده باعث کاهش پیچیدگی کد و افزایش خوانایی آن می‌شود.

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
Python - محدود کردن داده (MongoDB Limit)

Python – محدود کردن داده (MongoDB Limit)

Python MongoDB محدود کردن نتایج برای محدود کردن نتایج در MongoDB، از متد limit() استفاده می‌کنیم. متد limit() یک...

بیشتر بخوانید
Python - بروزرسانی (MongoDB Update)

Python – بروزرسانی (MongoDB Update)

به‌روزرسانی یک رکورد برای به‌روزرسانی یک رکورد یا سند در MongoDB، از متد update_one() استفاده می‌کنیم. پارامتر اول متد...

بیشتر بخوانید
Python - حذف کالکشن (MongoDB Drop Collection)

Python – حذف کالکشن (MongoDB Drop Collection)

حذف کالکشن شما می‌توانید یک جدول یا کالکشن در MongoDB را با استفاده از متد drop() حذف کنید. مثالحذف...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.