آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

آموزش ویژگی های کلاس (C# Properties)

آموزش خواص Properties در کلاس های زبان C# :

ویژگی (Property) در C# به شما امکان کنترل روش دسترسی و تغییر متغیرهای یک کلاس را می دهد. استفاده از ویژگی در C#، راه توصیه شده و درست جهت دسترسی به متغیرهای یک کلاس، به وسیله متدها یا توابع خارج از کلاس جاری، در زبان برنامه نویسی شی گرا object oriented می باشد. به عبارت دیگر، وقتی که یک متد یا کلاس دیگری در برنامه، بخواهد به متغیر یک کلاس دسترسی داشته باشد، بهتر است به جای این که مستقیما متغیر را استفاده کند، از طریق یک ویژگی یا Property در کلاس خود متغیر، به آن دسترسی داشته باشد.
در مثال آموزشی درس قبل (کار با کلاس ها) برای اولین بار روش استفاده از یک ویژگی یا Property را نشان دادیم. یک ویژگی یا Property همانند ترکیبی از یک متغیر Variable و یک متد method است. ویژگی نمی تواند پارامتری را دریافت کند، اما به وسیله آن می توانید قبل از ارسال و دریافت متغیر، مقدار آن را تغییر دهید. هر ویژگی یا Property از دو قسمت اصلی get و set تشکیل شده که همانند کد مثال زیر درون مجموعه Property تعریف می شوند :

private string color;

public string Color
{
    get { return color; }
    set { color = value; }
}
            

متد get مقدار متغیر را خوانده و آن را به برنامه بر می گرداند، از طرف دیگر متد set هم مقدار مورد نظر را به متغیر نسبت می دهد. مثال اول، ساده ترین حالت تعریف Property در C# است، اما می توانید آن را گسترش نیز بدهید.

نکته مهم :

مسئله مهم در هنگام تعریف یک ویژگی یا Property این است که تعریف یکی از متدهای set یا get نیز کفایت می کند و در صورت تعریف یکی، تعریف متد دیگر اختیاری است. این مسئله، امکان تعریف ویژگی های فقط خواندنی read-only و یا فقط نوشتنی write-only را می دهد.


در کد زیر یک مثال کامل تر از نحوه تعریف ویژگی ها در C# را نشان داده ایم :

public string Color
{
    get 
    {
        return color.ToUpper(); 
    }
    set 
    { 
        if(value == "Red")
            color = value; 
        else
            Console.WriteLine("This car can only be red!");
    }
}
            

در کد مثال فوق، ویژگی را کمی گسترش دادیم. در کد جدید، متغیر Color در هنگام return، به دلیل استفاده از متد ToUpper() به صورت حروف بزرگ، برگردانده می شود. از طرف دیگر، با استفاده از دستور شرطی if، فقط مقدار رنگ “red” برای متغیر Color پذیرفته می شود.

  • 4952
  •    0
  • تاریخ ارسال :   1395/07/27

دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .