سلام
میشه در مورد تفاوت فیلد و پراپرتی در ایجاد کلاس توضیح دهید؟
من فرقه این دو تا رو درست نمی دونم.توی خیلی از برنامه ها که از کلاس استفاده کردن،میبینم که داخل کلاس مثلا برای ذخیره ی سن شخص هم از فیلد استفاده کرده هم از پراپرتی.
چرا؟
و چرا هر دو با هم هستن؟نمیشد فقط پراپرتی باشه؟
مطلب خیلی ساده برات میگم .
در حقیقت property از 2 متد به نام های get,set تشکیل میشود . در برنامه نویسی oo هر object باید هویت مستقل داشته باشد یعنی اینکه تمام کارهای خودش را خودش انجام دهد . حال فرض کنیم class ی داریم بنام Student که در آن خاصیتی به نام age تعریف میشود . مشخص است که سن دانش آموز منفی نمتواند باشد و به فرض بیشتر از 150 نیز نمیتواند باشد .
برای این کار من فیلدی با modifier و انرا private تعریف میکنم و در داخل class خودم ازآن استفاده میکنم و props با modifier public تعرف میکنم برای جهان خارج .
متد get : مقدار باز گردانده شده را تعیین میکند
متد set : برای مقدار دهی به متغیرمان تعریف میشود
کد :
کد:
private int age;
public int Age
{
get
{
return age;
}
set
{
if (value >0 && (value<150))
{
age=value;
}
else
throw new Exception("value out of range");
}
}
(۰۹-فروردین-۱۳۸۸, ۰۹:۴۱:۲۱)shamstabrizi نوشته است: [ -> ]سلام
میشه در مورد تفاوت فیلد و پراپرتی در ایجاد کلاس توضیح دهید؟
من فرقه این دو تا رو درست نمی دونم.توی خیلی از برنامه ها که از کلاس استفاده کردن،میبینم که داخل کلاس مثلا برای ذخیره ی سن شخص هم از فیلد استفاده کرده هم از پراپرتی.
چرا؟
و چرا هر دو با هم هستن؟نمیشد فقط پراپرتی باشه؟