PDA

View Full Version : سوال: نوع object



mehdihadeli
دوشنبه 15 شهریور 1389, 00:43 صبح
ميشه منو در مورد نوع object راهنمايي كنيد كه چيه؟

sinashahab
دوشنبه 15 شهریور 1389, 01:04 صبح
سلام

اینم یه نمونه برای INT نوشتم.



object s = 21;
Text = s.GetType().ToString();

amirh_karimifar
دوشنبه 15 شهریور 1389, 01:34 صبح
نوع object نوععی هست که قابلیت تبدبل به تمام انواع دیگر را دارد . مخصوصا کمک زیادی در ارث بری و چند ریختی دارد . که شما نمونه های ساخته شده از کلاس های مختلف رو با کلاس object به راحتی پیاده سازی کنید .
یکی دیگر از کاربرد های object در کالکشن های پویاست . زمانی که شما می خواهید مثلا یک نمونه از کلاستون رو در یک لیست پیوندی دخیره کنید . لیست پیوندی اون رو به عنوان یک شی از کلاس object ذخیره می کنه . چون نمی تونه پیش بینی کنه شما چه چیزی رو می خواید به لیست اضافه کنید .

MEhdi Sobhani
دوشنبه 15 شهریور 1389, 05:58 صبح
به طور خیلی ساده اولین کلاس تعریف شده هست و بقیه کلاسها از این مشتق شدند .

fjm11100
دوشنبه 15 شهریور 1389, 09:58 صبح
یک نوع پایه در دات نت که تمام کلاسها از آن مشتق شده اند. در واقع تمام کلاسهای دیگر علاوه بر نوع خود از نوع object هم به حساب می آیند. این نوع داده برای زمانی که شما نمی دانید نوع شی شما دقیقا از چه نوعی است بکار می رود. شما می توانید نوع واقعی یک object را بعدا استخراج و آنرا به همان نوع cast کنید تا به متدها و خصوصیات اختصاصی آن نوع دسترسی پیدا کنید.

mehdihadeli
دوشنبه 15 شهریور 1389, 13:03 عصر
چطوری میتونم به نوع اصلی object دسترسی پیدا کنم؟

من دو تا object تعریف کردم و خواستم با هم جمع کنم error میده ؟در حالی که مقادیر دوتاشون
int بود ولی وقتی یکی از object ها رو toString() کردم جواب داد؟

fjm11100
دوشنبه 15 شهریور 1389, 13:11 عصر
نمیتونی object ها را مستقیم جمع کنی چون دات نت بدبخت نمیدونه که object تو عددی است!! باید اول آنها را به نوعی که مطمئنی و میدونی cast کنی مثل زیر:
object i = 6;
object j = 8;
int res = (int)i + (int)j;