درس هجدهم : اعلان کلاس با یک متد و نمونه سازی شی از کلاس

درس امروز را با استفاده از آموزش درس قلبی ( درس ۱۷ ) شروع می کنید . در این درس دو کلاس ایجاد خواهیم کرد . یک کلاس با نام GradeBook و دیگری با نام GradeBookTest . در کلاس GradeBook یک پیغام را برای نمایش ایجاد می کنیم و در کلاس GradeBookTest که دارای متد Main میباشد ، کلاس GradeBook را آزمایش خواهیم کرد .

یک پروژه جدید در Visual Studio  ایجاد کنید ( File > NewsProject… ) نوع آن را ConsoleApplication قرار دهید . در پروژه ایجاد شده نام Programs.cs را به GradeBook.cs تغییر دهید و دستورات را همانند دستورات زیر جایگزین کنید :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace GradeBookTest
{
    class GradeBook
    {
        public void DisplayMessage()
        {
            Console.WriteLine("Welcome To The Grade Book!");
        }
    }
}

توضیحات کلاس GradeBook  :

در این کلاس ما یک متد با نام DisplayMessage() ایجاد کرده ایم که کار نمایش پیغام را به کاربر انجام می دهد . استفاده از نوع Public برای این متد نوع دسترسی آن را مشخص می کند که ما در این قسمت دسترسی این متد را برای سایر متد ها و کلاس های این برنامه آزاد یعنی به صورت Public قرار داده ایم . برای ایجاد یک کلاس کافی است از کلمه کلیدی class و سپس نام کلاس که در این درس GradeBook است استفاده کند و سپس بدنه آن را با علامت های {}  مشخص کنید .

توضیحات متد DisplayMessage() :

دقت کنید در این قسمت کلاس ما بر خلاف دورس گذشته متد Main را ندارد . متد Main  در هر برنامه به صورت اتوماتیک اولین متدی  است که اجرا می شود . متد ما با کلمه ملیدی Public ایجاد شده است که این یعنی متد های دیگر می توانند آن را فراخوانی کنند و متد ما به صورت سراسری در دسترس می باشند. کلمه کلیدی Void به معنای نوع برگشتی متد میباشد که در این قسمت متد ما داده ای را به متد فراخوان برگشت نمی دهد . اگر متد ما از نوعی بود که مقداری را باید برگشت می داد به صورت زیر درج می شد .

Int biggest = Max(27,31,33);

در این مثال ساده متد Max مقداری را برای ما برگشت داده و در متغیر biggest قرار می دهد .

نام متد DisplayMessage  که بعد از نوع برگشتی قرار می گیرد . به صورت قرار دادی نام متد با حروف بزرگ شروع می شود و کلمات بعدی در نام متد نیز با حروف بزرگ درج می شوند. بدنه یک متد نیز با براکت باز و بسته مشخص می شود . که در این قسمت پیغام Welcome To The Grade Book! نمایش داده می شود .

استفاده از کلاس GradeBook

حال می خواهیم کلاس خود را مورد استفاده قرار دهیم .این کلاس چون که متد main  را در اختیار ندارد به تنهایی قابل اجرا شده نیست . بر روی نام پروژه در VisualStudio راست کلیک کرده و گزینه Add > NewItem را انتخاب کنید و یک کلاس با نام GradeBookTest.cs با استفاده از Add ایجاد کنید .

        public static void Main(string[] args)
        {	

        }

دستور بالا را در کلاس خود وارد کنید .

چرا از متد Main به صورت استاتیک تعریف شده است ؟ چون متد های استاتیک می توانند بودن اینکه شی ای از کلاس ایجاد شود فراخوانی شوند . در دورس آینده به صورت کامل متد های استتیک را توضح خواهیم داد .

حال می خواهیم از کلاس GradeBook یک شی را ایجاد کنید .

برای این کار در ابتدا نام کلاس را وارد کنید و سپس یک متغیر از نوع کلاس را قرار می دهیم و در ادامه بعد از علامت = یک نمونه اولیه از شی را با استفاده از new ایجاد می کنیم و بعد از آن حتما () را قرار دهید . در ادامه آموزش خواهیم گفت علت این () ها چیست .

نکته : هر کلاسی که در C# ایجاد می کنید به یک نوع جدید در C# تبدیل می شود .

نکته : عملگر new یک شی جدید از کلاس مشخص شده در سمت راست کلیمه کلیدی ایجاد می کند ( در این بخش GradeBook )

نکته : () ها نشانگر سازنده ها هستند که در آموزش های بعدی آن را هبه طور کامل توضیح خواهیم داد.

فراخوانی متد DisplayMessage از GradeBook :

در ابتدا نام متغیر کلاس را قرار می دهیم ( myGradeBook ) و سپس نام متد را با استفاده از عملگر دسترسی (.) قرار می دهیم . چون متد ما دارای آزگومانی در زمان تعریف نیست در این بخش نیز لیست پارامتر های خالی را دارد . یعنی در داخل پرانتز ها گزینه ای وارد نخواهیم کرد .

در رابطه ما آرگومان ها و پارامتر ها به صورت کامل توضیح داده می شود .

شکل کلی کلاس ما به صورت زیر خواهد بود :

public static void Main(string[] args)
        {
            GradeBook myGradeBook = new GradeBook();

            myGradeBook.DisplayMessage();
        }

می توانید از انتهای آموزش فایل مثال را دانلود کنید .

خروجی برنامه به صورت زیر خواهد بود. :

خروجی برنامه
خروجی برنامه

دانلود مثال

پسورد : csharpoop.com

درس هجدهم : اعلان کلاس با یک متد و نمونه سازی شی از کلاس
۴٫۵ (۹۰%) ۲ رایs

(434 نوشته)

C# Programmer , Web Design And Developer , MVC , ASP.NET

فکر شما چیست؟

آدرس ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند *

حاصل جمع اعداد را وارد کنید : *