PDA

View Full Version : سوال: تفاوت فیلد و متغیر



flamingo
یک شنبه 23 اسفند 1388, 13:28 عصر
سلام
دوستان کسی میتونه به من بگه تفاوت فیلد و متغیر چیه؟؟؟
من توی یک کتاب خوندم که فیلد متغیری است که در سراسر یک کلاس مشترک است
آیا این جمله درسته؟؟
بعد در ضمن آیا این جمله هم درسته که متدها و فیلد ها به عنوان اعضای یک کلاس شناخته
میشوند؟؟
ممنون

Yasersadegh
یک شنبه 23 اسفند 1388, 13:49 عصر
سلام دوست عزيز
متغير به شناسه اي گفته ميشه كه برايه فضايي در حافظه در نظر گرفته شده كه توسط آن مي توان به آن فضا مقدار داد! به مثال زير توجه كنيد:



int i;
i=2;

در خط اول فضايي را در حافظه در نظر گرفتيم به ميزان 2 بايت(به اندازه int) ونام آن را i گذاشتيم! سپس برايه مقدار دهي آن فضا از نام i استفاده كرديم و مقدار 2 را در آن قرار داديم!!

اما فيلد كوچكترين عضو بانك اطلاعاتي مي باشد! مجموعه اي از فيلدها را يك ركورد گويند!
در يك برنامه مقدار هر فيلد را مي توان در يك متغير قرار داد و يا مقدار هر متغير را در يك فيلد بانك اطلاعاتي ذخيره نمود!



من توی یک کتاب خوندم که فیلد متغیری است که در سراسر یک کلاس مشترک است
آیا این جمله درسته؟؟
خير! اين جمله به طور كلي درست نمي باشد!! اما ممكنه در اون كلاس خاص كه برايه ارتباط با بانك اطلاعاتي مي باشد منظورش متغيرهاي هم نام با فيلدها بوده است!:متفکر:



بعد در ضمن آیا این جمله هم درسته که متدها و فیلد ها به عنوان اعضای یک کلاس شناخته
میشوند؟؟
متدها اعضاي كلاسها هستند ولي فيلدها همونطور كه تعريف كردم ربطي به كلاس ندارند!! باز احتمالا منظورش متغيرهاي هم نام با فيلدها بوده است!!:متفکر:

موفق باشيد:چشمک:

Sirwan Afifi
یک شنبه 23 اسفند 1388, 13:58 عصر
فیلدها همون متغییرها هستن که تو می تونی تو کلاست استفاده کنی
اولا : بستگی به خودت داره که فیلدتو خصوصی بذاری یا عمومی
دوما :بله متدها و فیلد ها به عنوان اعضای یک کلاس شناخته
میشوند.

flamingo
یک شنبه 23 اسفند 1388, 16:16 عصر
سلام

اولا : بستگی به خودت داره که فیلدتو خصوصی بذاری یا عمومی
ببین دوست من, توی کتاب این جمله رو نوشته,
A fileld is a variable common to the whole class
این جمله میگه که فیلد در کل کلاس مشترک است؟؟
ممنون

M.YasPro
یک شنبه 23 اسفند 1388, 17:46 عصر
اگر دیدگاه شما فقط کلاس نوشتن باشه فیلد یک متغره که از نگاه بیرونی بیانگر یک مشخصه از یک موجودیت هست .
اگر دیدگاه شما دیتابیس هست که دوستان در بالا پاسختون رو دادند:


اما فيلد كوچكترين عضو بانك اطلاعاتي مي باشد! مجموعه اي از فيلدها را يك ركورد گويند!
در يك برنامه مقدار هر فيلد را مي توان در يك متغير قرار داد و يا مقدار هر متغير را در يك فيلد بانك اطلاعاتي ذخيره نمود!

gwbasic
یک شنبه 23 اسفند 1388, 17:57 عصر
متغیر ها (Variables)دو نوع هستند :
1- فیلد که در سطح کلاس تعریف می شود ( در حقیقت خارج از هر متد )
2- (LocalVariable) متغیر های محلی که در سطح کلاس تعریف می شوند
اما احتمالا در کتاب مورد نظر شما از متغیر برای مورد دوم استفاده می شود.

برای توضیحات بیشتر به لینک زیر مراجعه کنید:
http://barnamenevis.org/forum/showthread.php?t=208537

gwbasic
یک شنبه 23 اسفند 1388, 17:58 عصر
متغیر ها (Variables)دو نوع هستند :
1- فیلد که در سطح کلاس تعریف می شود ( در حقیقت خارج از هر متد )
2- (LocalVariable) متغیر های محلی که در سطح کلاس تعریف می شوند
اما احتمالا در کتاب مورد نظر شما از متغیر برای مورد دوم استفاده می شود.

برای توضیحات بیشتر به لینک زیر مراجعه کنید:
http://barnamenevis.org/forum/showthread.php?t=208537

flamingo
یک شنبه 23 اسفند 1388, 18:17 عصر
متغیر ها (Variables)دو نوع هستند :
1- فیلد که در سطح کلاس تعریف می شود ( در حقیقت خارج از هر متد )
2- (LocalVariable) متغیر های محلی که در سطح کلاس تعریف می شوند
اما احتمالا در کتاب مورد نظر شما از متغیر برای مورد دوم استفاده می شود.

برای توضیحات بیشتر به لینک زیر مراجعه کنید:
http://barnamenevis.org/forum/showthread.php?t=208537
سلام
من کتاب شما رو داونلود کردم
اتفاقا این دوتا مطلبش برایم گنگ بود!!:خجالت:
متغیر محلی و فیلد که در سطح کلاس تعریف میشوند یعنی چی؟؟
میشه یکم بیشتر توضیح بدید؟؟
به معنای مشترک بودن است؟؟
ممنون

gwbasic
سه شنبه 25 اسفند 1388, 14:14 عصر
بین دوست عزیز مفهوم متغیر رو که حتما آشنا هستی مثلا

string s;
یعنی اینکه متغیر s از جنس string می باشد... .
حالا اگه این متغیر در سطح کلاس تعریف شود ، می شود فیلد ( این فقط یک اسمه ) منظور از سطح کلاس یعنی داخل کلاس و بیرون از هر عضو دیگر کلاس (مثل متد) ولی اگر متغیر در داخل متد باشد می شود متغیر محلی ( این هم فقط یک اسمه )
ولی این دو یه تفاوت هایی با هم دارند که بدیهی است مثلا متغیر محلی که در داخل متد تعریف می شود وفتی متد به پایان رسید آن متغیر نیز آزاد می شود ولی فیلد تا وقتی نمونه کلاس Dispose نشده موجود می باشد

من پیشنهاد می کنم کمی بیشتر مطالعه کنید و صبور تر باشید تا این سوالات مرتفع شوند. اینطوری زمان را از دست می دهید وشاید دیگر ادامه ندهید.از یک کتاب ساده برای شروع استفاده کنید