مفهوم class ها در سی شارپ

Class ها در سی شارپ

۲ دیدگاه

Class چیست؟

Class ها در سی شارپ یکی از انواع Reference Type ها در دات نت می باشند. کلاس ها یکی از پرکاربرد ترین انواع داده ها به شمار می روند. داده ها در حالت کلی به دو نوع Value Type و Reference Type طبقه بندی می شوند. (برای آشنایی بیشتر با ساختار حافظه و انواع داده ها مطالب: ساختار حافظه در برنامه های مبتنی بر دات نت و انواع داده ها در سی شارپ را مطالعه نمایید). عملا Class ها در سی شارپ مانند نقشه یا الگویی برای ساخت محصول و شیء نهایی هستند. Class ها با استفاده از Member ها خصوصیات (Property , Field)، عملکرد ها (Method) و رخدادهای (Event) مرتبط با شیء نهایی را توصیف می کنند. (برای آشنایی بیشتر با Member ها مطلب: Member ها در سی شارپ را مطالعه نمایید).

تعریف Class در سی شارپ

برای تعریف Class در سی شارپ کافی است از کلمه کلیدی class و { } بعد از آن برای مشخص کردن بلوکی از کد که Member ها را در خود جای داده است استفاده نماییم. به مثال زیر توجه کنید:

class Person
{

       //Member Definition Here

}

می توان قبل از عبارت class از Access Modifier ها برای مشخص کردن سطح دسترسی به class استفاده کرد. (برای اطلاعات بیشتر در مورد Access Modifier ها مطلب: آشنایی با Access Modifier ها در سی شارپ را مطالعه نمایید).

public class Person
{

       public string Fullname;
       public int Age;
       public char Gender;

}

در مثال فوق کلاس سطح دسترسی public دارد. همچنین سه Field برای نگهداری نام، سن و جسیت در این کلاس از نوع string و int و char به ترتیب تعریف شده اند. دقت داشته باشید، این class مترادف و توصیف کننده ی هیشچ شخص خاصی نمی باشد. تا اینجا صرفا قالب و الگویی برای توصیف افراد تعریف کرده ایم. برای اینکه بتوانیم اطلاعات یک شخص خاص را با این قالب توصیف کنیم، باید از این کلاس نمونه سازی کنیم.

نمونه سازی یا Instantiation چیست؟

نمونه سازی، به فرآیند ساختن یا نمونه از روی یک کلاس گفته می شود. این فرآیند موجب می شود یک نمونه بر اساس ساختار کلاس مورد نظر در بخش Heap از حافظه ساخته شود. سپس آدرس آن نمونه در متغییری از جنس کلاس مورد نظر در Stack قرار خواهد گرفته. با استفاده از این متغییر و Reference موجود در آن، به نمونه ساخته شده دسترسی داریم. (برای آشنایی بیشتر با ساختار حافظه مطلب: ساختار حافظه در برنامه های مبتنی بر دات نت را مطالعه نمایید).

Person p ;                     // تعریف متغییر
p = new Person (  ) ;    // نمونه سازی

هر نمونه ساخته شده کلاس مستقل از سایر نمونه هاست. درواقع هر نمونه یک ست مجزا از Member ها را دارد. بنابراین داده های موجود در هر نمونه، مستقل از نمونه های دیگر خواهد بود. همین ویژگی یکی از مزایای اولیه برنامه نویسی شیء گرا است. (برای آشنایی با مفاهیم برنامه نویسی شیء گرا، مطلب: برنامه نویسی شیء گرا در سی شارپ را مطاعه نمایید)

آواتار کاربر

شهاب ساری اصلانی

از سال 1385 به صورت جدی مشغول تدریس در حوزه های برنامه نویسی دات نت و طراحی بانک های اطلاعاتی بوده ام. تدریس به عنوان یک حرفه همیشه برایم جذاب بوده و یادگیری جدیدترین مباحث لذت بخش است.

۲ دیدگاه

  1. خرداد ۸, ۱۳۹۹

    مطلب خوب و آموزنده ای بود، در مورد انواع متد های سازنده هم ممکنه توضیح بدین؟

    • آواتار کاربر
      خرداد ۹, ۱۳۹۹

      ممنون از توجه شما،
      در ادامه مطالب در مورد Constructor و موارد استفاده اون توضیحاتی در سایت قرار خواهد گرفت

ارسال یک دیدگاه

آدرس ایمیل شما منتشر نخواهد شد.