آموزش سی شارپ

مباحث پایه سی شارپ

مباحث پیشرفه سی شارپ

دستورات سی شارپ

متدها (Methods) در سی شارپ – آموزش سی شارپ

  • شنبه ۱۷ آذر ۱۳۹۷
  • بازدید ۲,۱۴۱ نفر

تصویر csharp-methods_4471 متدها (Methods) در سی شارپ - آموزش سی شارپ

متدها (Methods) در سی شارپ

یک متد مجموعه از دستورات است که با هم یک کار را انجام می دهند. همه برنامه های C# یک کلاس با متد Main() را دارد.

به منظور استفاده از یک متد باید:

  • آن را تعریف کنید
  • آن را فراخوانی کنید

تعریف یک متد در C#

زمانی که یک متد را تعریف می کنید، اساس عناصر مربوط به ساختار آن را مشخص می کنید. سینتکس کلی تعریف متد در سی شارپ به صورت زیر است:

در زیر بخش های مختلف ساختار یک متد در زبان سی شارپ بررسی شده است:

  • Access Specifier : مشخصه دسترسی متد را مشخص می کند.
  • Return Type : نوع داده ای که قرار است از متد بازگشت داده شود را مشخص می کند. اگر هیچ مقدار بازگشتی وجود نداشته باشد، به صورت void نوشته می شود.
  • Method Name : نام متد را مشخص می کند که باید منحصر به فرد باشد و به حروف بزرگ و کوچک حساس است.
  • Parameter List : لیست پارامترهای یک متد را به منظور انتقال و دریافت داده ها مشخص می کند. یک متد می تواند هیچ پارامتری نداشته باشد.
  • Method Body : دستورات لازم برای انجام فرآیندی که متد قرار است انجام دهد را مشخص می کند.

مثال

تکه کد زیر تابع FindMax() را نشان می دهد که دو عدد می گیرد و هر کدام از آن ها که بزرگتر باشد را به عنوان خروجی باز میگرداند. از آنجایی که این متد داری مشخصه public است پس در خارج از کلاس نیز قابل دسترسی می باشد.

فراخوانی متد در C#

برای فراخوانی و اجرای یک متد باید از نامی که برای آن تعریف کرده اید استفاده کنید. مثال زیر نحوه فراخوانی متد را نشان می دهد:

امتحان کنید

زمانی که کد بالا توسط کامپایلر زبان سی شارپ اجرا شود، نتیجه زیرا را تولید خواهد کرد:

با نمونه سازی از یک کلاس می توانید به اعضای عمومی آن دسترسی داشته باشید. برای مثال متد FindMax() که متلق به کلاس NumberManipulator است، در خارج از این کلاس و در کلاس تست فراخوانی می شود.

امتحان کنید

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

فراخوانی متد به صورت بازگشتی

متدی که خودش را فراخوانی کند، به عنوان متد بازگشتی شناخته می شود. در مثال زیر با استفاده از متد بازگشتی فاکتوریل عدد داده شده را محاسبه می کنیم:

امتحان کنید

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

ارسال پارامترها به متد

اگر متدی که فراخوانی می شود، دارای پارامتر باشد، باید پارامترهای لازم به آن منتقل شود. در زبان برنامه نویسی سی شارپ سه روش برای ارسال پارامترها وجود دارد که در زیر مشاهده می کنید:

ردیفتوضیحات
1ارسال پارامتر با مقدار

در این روش فقط یک کپی از مقدار اصلی به متد ارسال می شود و تغییرات اعمال شده در متد تاثیری بر مقدار اصلی ندارد.

2ارسال پارامتر به صورت ارجاع

در این روش یک کپی از مرجع پارامتر به متد ارسال می شود به این معنی که متد دسترسی مستقیم به مقدار آن پارامتر دارد و هر تغییری که درون متد اعمال شود بر روی مقدار اصلی نیز تاثیر می گذارد.

3ارسال پارامتر به عنوان خروجی

این روش برای بازگشت دادن بیش از یک مقدار از متد، استفاده می شود.

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است