علمی فناوری 15:50 - 18 آبان 1404

آموزش سی‌شارپ – بخش ۶۱
  • مقدمه

در بخش ۶۰ام از سری آموزش زبان برنامه‌نویسی سی‌شارپ، شما با نحوه ارسال اطلاعات به Class را آموختید، اما اگر به خاطر داشته باشید، در مورد روش نامناسب ارسال اینگونه اطلاعات کمی صحبت کردیم. در این قسمت می‌خواهیم در رابطه با Propertyهای یک Class که بوسیله آن‌ها می‌توانیم اطلاعات را ارسال کنیم، صحبتی داشته باشیم.

  • اضافه کردن Property به کلاس‌ها

تا کنون که درحال نوشتن آموزش‌های زبان سی‌شارپ بودیم و شما گام‌به‌گام همراه با ما پیش رفتید، از مفهموم Property استفاده زیادی کردیم. مثلاً، یکی از Propertyهای پرکاربرد Textbox، با نام text بود که توسط آن، می‌توانستیم متن داخل Textbox را تعیین کنیم. برای مثال:

textBox1.Text = “My Text”;

پس ما یک Object با نام textbox1 داریم که یک Property به نام Text در آن وجود دارد.

به Classای که پیش‌تر در پروژه ساختیم نگاه کنید؛ فعلاً تنها کدی که در آن وجود دارد، یک متد از نوع Private می‌باشد که نام آن را getMessage قرار داده بودیم. این متد بدلیل آنکه سطح دسترسی Private دارد، بیرون از کلاس قابل دیدن و استفاده کردن نیست. اما عدم امکان استفاده از آن در بیرون از کلاس، دلیل بر عدم کارآیی آن بطور کلی نیست، بلکه می‌توانیم از آن در داخل خود Class استفاده کنیم.

ما با استفاده از Propertyای که تعریف می‌کنیم، خواهیم توانست که این متد را بعداً صدا بزنیم. Property ما قرار است دو کار زیر را انجام دهد:

۱. ارسال اطلاعات به Class

۲. بازخوانی اطلاعات ارسال شده از Class

روش ساده برای اضافه کردن یک Property به Class، استفاده از Insert Snippet که بصورت منو است، می‌باشد. کافیست که بر روی فضای خالی از کدهایتان راست کلیک کرده و روی Insert Snippet کلیک کنید.

insertSnippet_p100

با انتخاب این گزینه، منوی زیر برای شما نمایش داده می‌شود. کاربران Visual Studio نسخه ۲۰۱۲ آن ممکن است که منوی دیگری را ابتدا مشاهده کنند.

insertSnippetProp_p100

گزینه prop را انتخاب کرده تا کدهای پیشفرض برای شما قرار گیرد. دقت کنید که اگر درحال استفاده از Visual Studio 2012 هستید، می‌بایست که گزینه propfull را انتخاب کنید.

insertSnippetProp2_p100

کدها شاید کمی گیج‌کننده بنظر بیاید، اما نترسید؛ تک‌تک موارد را قدم به قدم با هم پیش خواهیم رفت.

کد بصورت پیشفرض برای یک Property از نوع integer و سطح دسترسی public با نام MyProperty ایجاد شده است. یک متغیر با سطح دسترسی private نیز ایجاد شده که نام آن myVar می‌باشد. دقت کنید که به متغیرهای داخل یک کلاس، فیلد (Field) نیز می‌گویند.

قرار است که ما متن تبریک تولد را بصورت String برگردانیم، پس کدهایتان را به‌شکل زیر تغییر دهید:

insertSnippetProp3_p100

نام متغیری که بیرون از Property هست را به birthdayMessage تغییر دادیم. دقت کنید که دسترسی آن Private بوده و فقط در داخل Class می‌توان از آن استفاده کرد. در داخل Property نیز دقت کنید که مقدار myVar را نیز به نام جدید آن‌، یعنی birthdayMessage، تغییر داده‌ایم.

ساختار یک Class بصورت زیر است:

public string MyProperty

{

}

شما می‌توانید از هر نوعی که بخواهید و با هر نامی که تمایل دارید یک Property بسازید؛ تقریباً شبیه به یک متغیر است! حال دقت کنید که در داخل بدنه یک Property، قسمتی جهت دریافت مقدار متغیر می‌باشد.

get { return birthdayMessage; }

و بخش دیگری نیز جهت تنظیم مقدار متغیر وجود دارد:

set { birthdayMessage = value; }

کلمات کلیدی set و get برای این مقصود بکار می‌روند. Value همان مقداری است که می‌خواهید به Property ارسال کنید.

اگر مقدار داخل عبارت set را به مقدار زیر تغییر دهید، متدی که قبلاً بصورت private بوده نیز مورد استفاده قرار خواهد گرفت.

birthdayMessage = getMessage( value );

در قسمت بعد، نحوه استفاده از این propertyها را فراخواهید گرفت.


4353814
 
پربازدید ها
پر بحث ترین ها

مهمترین اخبار علمی فناوری

علمی فناوری
«باشگاه خبرنگاران» فلوشیپ درد با اشاره به افزایش چشمگیر مشکلات ستون فقرات در نسل جوان گفت: اکنون بیش از ۸۰ درصد بیماران دیگر نیاز به عمل جراحی ندارند و با استفاده از روش‌های مداخله‌ای و نوین به صورت سرپایی درمان می‌شوند.
علمی فناوری
«باشگاه خبرنگاران» رئیس اداره جوانی جمعیت وزارت بهداشت گفت: سیاست‌های تشویقی جهت فرزند آوری در کشور اجرا می‌شود.
علمی فناوری
«باشگاه خبرنگاران» در صنعت اپراتوری به مدیرعامل همراه اولنشان عالی کیفیت اعطاء شد.
علمی فناوری
«باشگاه خبرنگاران» جمعی از اساتید و دانش‌پژوهان حوزه اقتصاد و مدیریت خطاب به رؤسای محترم قوای سه‌گانه جمهوری اسلامی ایران بیانیه‌ای منتشر کردند.
علمی فناوری
«باشگاه خبرنگاران» سلول‌های سرطانی درست مانند خود انسان‌ها، از گیرنده‌های طعم تلخ برای جلوگیری از دارو‌هایی که به آنها آسیب می‌رسانند، استفاده می‌کنند و محققان اکنون دریافته‌اند که از کار انداختن این حسگر‌ها می‌تواند به طور چشمگیری اثربخشی شیمی‌درمانی را بهبو...
علمی فناوری
«باشگاه خبرنگاران» با امضای وزیر آموزش و پرورش دستورالعمل برگزاری «جشنواره مدرسه‌ای نقشینه» با شعار «هر دانش‌آموز یک نقش، هر دانش‌آموز یک تشکل» ابلاغ شد.
علمی فناوری
«باشگاه خبرنگاران» رییس دانشکده طب سنتی دانشگاه علوم پزشکی شهید بهشتی گفت: بهره‌گیری از ظرفیت گردشگری طب ایرانی، می‌تواند ایران را به یکی از مقاصد مهم منطقه در حوزه سلامت طبیعی و سبک زندگی ایرانی تبدیل کند.
علمی فناوری
«باشگاه خبرنگاران» قائم‌مقام وزیر علوم، تحقیقات و فناوری جمهوری اسلامی ایران و معاون وزیر امور خارجه فدراسیون روسیه در حاشیه کنفرانس عمومی یونسکو بر گسترش همکاری‌های علمی و دانشگاهی ایران و روسیه تاکید کردند.
علمی فناوری
«باشگاه خبرنگاران» رئیس مرکز روابط عمومی وزارت بهداشت، درمان و آموزش پزشکی گفت: جشنواره بین‌المللی عکس «ایران جوان» با همکاری دانشگاه علوم پزشکی تربت‌حیدریه، ستاد ملی جمعیت، وزارت فرهنگ و ارشاد اسلامی، معاونت بهداشتی وزارت بهداشت و دانشگاه‌های علوم پزشکی سراس...
علمی فناوری
«باشگاه خبرنگاران» به نظر متناقض می‌رسد، اما محققان دریافته‌اند قرص‌هایی که برای سردرد مصرف می‌شوند، ممکن است در واقع درد را تشدید کنند.

مشاهده مهمترین خبرها در صدر رسانه‌ها

صفحه اصلی | درباره‌ما | تماس‌با‌ما | تبلیغات | حفظ حریم شخصی

تمامی اخبار بطور خودکار از منابع مختلف جمع‌آوری می‌شود و این سایت مسئولیتی در قبال محتوای اخبار ندارد

کلیه خدمات ارائه شده در این سایت دارای مجوز های لازم از مراجع مربوطه و تابع قوانین جمهوری اسلامی ایران می باشد.

کلیه حقوق محفوظ است