سی شارپ

|

اموزش کلاس ها و متد

کلاس ها:

در سی شارپکه برنامه ای تمام شی گرا است تمام مفاهیم و اشیا به صورت کلاس ها و ارتباط بین کلاس ها است.

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

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

هر کلاس 4 جزء دارد :فیلد،peraperties ،متد،event

که این چهار جزء ، جزو اجزای اصلی کلاس ها است. در آینده با تابع سازنده آشنا می شویم که می توانیم آن را زیر مجموعه ای از متدها در نظر بگیریم.

کلاس ها می توانند هر کدام از این جزء را نداشته باشد اما به محض ساخت کلاس تابع سازنده نیز ایجاد می شود.

همانطور که در جلسه چهارم اموزش سی شارپگفته شد ما متغییرهای string، integer، char و ... که تعریف کرده ایم در پشته ذخیره می شد و همانطور که در جلسه پنجم اموزش سی شارپگفتیم آرایه ها در heap ایجاد می شدند. کلاس ها هم مانند آرایه ها درون heap ایجاد می شود.

برای تعریف کلاس ها باید حتما کلمه کلیدی class نوشته شود و بعد نامه کلاس را بنویسیم. اگر قبل از کلمه کلیدی کلاس چیزی ننویسیم به این معنا است که دسترسی کلاس های دیگر به کلاس ما پیش فرض به صورت private ساخته می شود به این معنی است که فقط از درون خود آن کلاس می توانیم از کلاس استفاده کنیم و اگر کلمه کلیدی public را بنویسیم به این معنی است که کلاس ما می تواند در کل برنامه و از کلاس های دیگر نیز قابل دسترسی باشد. به صورت زیر عمل کنیم:

Access modifier(private or public) Class person

{

}

فیلد

فیلدها همان متغییرها هستند که ما قلبلا در جلسه دوم و سوم توضیح دادیم در اینجا این متغییرها شامل access modifier نیز می شود. علامت آیکن شیء ها و متد ها را در شکل زیر می بینید.

اموزش سی شارپ

متد

متد یک تابعی هست که می خواهیم در برنامه برای ما عملیاتی را انجام بدهد. اگر متدی که تعریف می کنیم void باشد یعنی مقداری را برنمی گرداند و نیازی به دستور return ندارد اما اگر از هر چیزی بجز void استفاده کنیم باید دستور return داشته باشیم.

دریافت آخرین مطالب وبلاگ در کانال داتینه

علی نعیمی

علی نعیمی هستم،دارای لیسانس سخت افزار.
از سال 90 بصورت تخصصی به فراگیری زبان سی شارپ پرداختم. در حال حاضر مسلط به سی شارپ، جاوا، پایگاه داده و زبان های تحت وب هستم.

نظرات
نظر بدهید