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

آموزش Class ها در سی شارپ - قسمت اول


نوع داده کلاس(class) در سی شارپ

قسمت اول

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

 

اشیا در زبان شی گرا

در زبان های شی گرا (object oriented language) بر خلاف زبان های روال گرا  به جای برنامه نویسی بر اساس روال ها ، بر نامه نویسی بر اساس اشیا (objects) انجام می شود. و از انجا که این طرز تفکر در بر نامه نویسی نزدیک تر به دنیای واقعی است برنامه نویسی در ان بسیار راحت تر و قابل درک تر  است . دنیای واقعی پر است از اشیا (objects) مانند حیوان ، ماشین ، ساختمان ، انسان و ... . در  برنامه نویسی شی گرا  (object oriented language) نیز می توان این تفکر را انتقال داد و با هر چیزی مانند یک شی برخورد کرد . مانند تاریخ ، زمان ، شخص و ... .  برای تعریف اشیا در زبان برنامه نوسی ما نیاز به یک الگوی کلی داریم تا بتوان اشیا را در قالب این الگو ایجاد کنیم .  به این الگو کلاس گفته می شود .

 کلاس در زبان شی گرا

کلاس ( class ) در زبان  های شی گرا (object oriented language) ، به معنای دسته بندی است. و از آن برای دسته بندی موجودیت ها ( اشیا ) با خصوصیات (attribute)  و عملکرد های(operation) مشترک استفاده می شود. یک کلاس مانند یک طرح کلی عمل می کند که در آن داده و رفتار در ساختار مورد نظر برنامه نویس مشخص می شود. به عنوان مثال  در تعربف کلاس ، ماشین ، می تواند تمام ماشین ها را که دارای خصوصیاتی (attribute) مشترکی مانند فرمان و موتور هستند و  همچنین عملکرد های  (operation) مشترکی مانند حرکت کردن و ایستادن را دارند ، در یک مفهوم به نام کلاس ماشین ، جمع کند . به عبارت دیگر می توان گفت مفهوم کلاس مانند یک حصار ، اطلاعات درون خود را از سایر اطلاعات جدا و نگهداری می کند ، مانند کلاس حیوانات یا کلاس انسان ها یا از دیدگاه بالاتر کلاس موجودات زنده. در تمامی این مثال ها ، هدف ، دسته بندی و جداسازی اطلاعاتی که به نوعی به یکدیگر مرتبط هستند ، با استفاده از مفهوم کلاس دنبال می شود.

تعریف نوع داده کلاس در سی شارپ

کلاس ، ساختاری است که برنامه نویس را قادر می سازد تا نوع داده سفارشی (custom) خودش را تعریف کند . به عبارت دیگر همان طور که اشاره شد کلاس (class) ، داده ها (data)  و رفتار (behavior) را در نوع  سفارشی ایجاد شده ، مشخص می کند . این کار در تعریف کلاس  با استفاده  از کنار هم قرار دادن متغیر ها (variables) با انواع متفاوت ( از تمام انواع موجود ) ، متد ها  (method) و رخداد های (events) متفاوت ، در کنار یک دیگر و در قالب یک ساختار ، امکان پذیر  شده است .

الگوی تعریف نوع داده کلاس در سی شارپ


 accessModifier class  ClassName

{

 class body ( include  : fields , properties , methods , events , indexer , constructors , operators …)

}
  • کلمه کلیدی کلاس (class) : کلمه کلیدی class  مشخصه تعریف کلاس در سی شارپ است.
  •   کلمه کلیدی مشخص کننده سطح دسترسی (access Modifier) : مشخص کننده  سطح دسترسی به کلاس تعریف شده است و باید قبل از کلمه کلیدی class قرار بگیرد. ( در مقالات بعدی با جزییات بیشتری در مورد آن توضیح داده خواهدی  شد .)
  • نام کلاس (ClassName) : نام در نظر گرفته شده  برای نوع کلاس  تعریف شده توسط برنامه نویس است .
  • دو تا پرانتز باز و  بسته ({}) : دو تا پرانتز باز و  بسته ، حدود کد در بدنه ساختار کلاس را مشخص می کنند.
  • بدنه کلاس (class body) : در این قسمت از تعریف کلاس ، داده ها (data) و رفتار (behavior) که از کلاس تعریف شده انتظار می رود، پیاده سازی می شود. این کار با تعریف اعضای (members) یک کلاس، که تشکیل شده از : فیلدها( fields ) ، خصوصیات ( properties ) ، متد ها   (methodes) ، رخداد ها ( events )  و ...  انجام می شود. و هر کدام از این اعضا باید توسط برنامه نویس تعریف شود. ( در مورد هر کدام از این تعاریف در مقالات بعدی توضیح داده خواهد شد. )

نکته

همانطور که در مقاله نوع داده (data type) در سی شارپ اشاره شد ، نوع داده کلاس در سی شارپ از نوع داده مرجع ( reference )  است.

 

مثال : تعریف ساده یک کلاس در سی شارپ

namespace ClassStatment

{

    public class person

    {

        //default constructor

        public person()

        {
            name = "test";
            identityNumber = "1234667";
        }



        // constructor

        public person(string personName, string IDNumber)

        {

            name = personName;
            identityNumber = IDNumber;

        }

        public string name { get; set; }
        public string identityNumber { get; set; }


        public string print()

        {

            return "name=" + name + " " + " identityNumber=" + identityNumber;
        }

    }

}

 

در این مثال یک کلاس  با نام person با سطح دسترسی عمومی (public)  تعریف شده است. در بدنه این کلاس ، اعضای کلاس عبارت هستند از : دو سازنده ، که برای مقدار دهی اولیه متغیر های درون کلاس تعریف شده است ، دو خصوصیت با نام های name  و identityNumber که برای نگهداری اطلاعات مریوط به نام و شماره شناسایی موجودیت شخص تعریف شده است و همچنین متد print که با هدف چاپ مقادیر دو خصوصیت name و identityNumber در کنار یکدیگر تعریف شده است .

 

گرداوری : سمانه وزیریان

فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

آموزش ارسال پیامک، آموزش ارسال پیامک تکی و گروهی ، ارسال پیامک به صورت اختصاصی برای هر مشترک، دریافت پیامک، مشاهده وضعیت…

توضیحات کلی مجموعه:   آیا می دونید قیمت نرم افزارهای مدیریت پیامک در حدود 150 هزار تومان است؟ اما توسط این دوره شما میتونید با مبلغ بسیار کمتر یک نرم افزار مدیریت پیامک رو به صورت کاملا حر…
فصلِ: 9 , تعداد قسمت ها: 59 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

در این فصل که فصل پایانی این دوره می باشد در مورد نحوه ساختن فایل نصبی سریع یا همان quick installer که روش پیشنهاد شده م…

توضیحات کلی مجموعه: پس از بازخوردهای بسیار خوبی که از دوره های آموزش برنامه نویسی سیستم اتوماسیون اداری و آموزش برنامه نویسی سیستم فروش و انبارداری مشاهده کردیم، تصمیم گرفتیم با توجه به درخ…
فصلِ: 13 , تعداد قسمت ها: 120 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

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

دوره صفر تا صد  آموزش برنامه نویسی و پیاده سازی سیستم اتوماسیون اداری تحت شبکه. (توصیه می شود دومی مجموعه را حتما ببینید) امروزه اطلاعات یکی از مهمترین و با ارزشترین منابع هر اداره و یا ساز…
فصلِ: 4 , تعداد قسمت ها: 14 , سطح: مقدماتی

این فصل در یک نگاه:

توضیح تنظیمات گرافیک و صدا در یونیتی پیاده سازی منو ها …

به نام خدا   بازی‌سازی یک حرفه بسیار جذاب است و تبدیل شدن به یک بازی‌ساز حرفه‌ای آرزوی همه ماست. اینکه بتوانیم دنیای خاصی خلق کنیم و در این دنیا قوانین خود را پیاده کنیم، همیشه ما را به وج…
فصلِ: 11 , تعداد قسمت ها: 92 , سطح: صفر تا صد

این فصل در یک نگاه:

اجرای سیستم روی سیستم، قرار دادن سیستم روی سرور، تعریف Connetion String، آشنایی با فایل App.config، ساخت رشته اتصال به ص…

مهمترین تکنولوژیهای استفاده شده در این دوره پروژه محور (سیستم فروش کالا و انبارداری) طراحی گرافیکی به روش WPF (Windows Presentaion Foundation) آموزش کامل برنامه نویسی xaml (برای طراحی های …
فصلِ: 5 , تعداد قسمت ها: 25 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل پنجم…

توضیحات کلی مجموعه: درباره گیت: لذت پیش بردن پروژه های برنامه نویسی خود را با بهترین ورژن کنترل سیستم جهان تجربه کنید کامل ترین دوره ی آموزشی گیت و گیت هاب به همراه مثال های کاربردی گی…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید