PDA

View Full Version : سوال: مشکل در درک این مفاهیم



akbaro
یک شنبه 12 خرداد 1387, 16:42 عصر
سلام دوستان. من دارم ایبوک wrox آموزش c# ور میخوانم. جاییکه داره کلکسیونها رو درس میده. از عبارت strongly typed methods یا strongly typed collection استفاده میکنه که معنیش رو نمیفهمم. اگه میشه کمکم کنید.

یه سوال دیگه. در یک قسمتی از درس بک کلاس پدر تعریف شده و دو کلاس فرزند زیر به نامهای cow و chicken ازش مشتق شدند. در اینجا یک آرایه از کلاس پدر به نام animalَArray تعریف کرده و خواسته دو نمونه از کلاسهای فرزند رو در اون قرار بده ولی به دو شکل متفاوت که من فرقش رو نمیدونم. این جمله زیر رو هم براش نوشته ولی من بازم نتونستم فرقش رو بفهمم. منظورش چیه؟

Cow myCow1 = new Cow("Deirdre");
[animalArray[0] = myCow1;
animalArray[1] = new Chicken("Ken");


This code does this in two ways: once by assignment using an existing Cow object, and once by assignment through the creation of a new Chicken object. The main difference here is that the former method leaves you with a reference

ASKaffash
یک شنبه 12 خرداد 1387, 17:24 عصر
با سلام
دوست عزیز :
تنها یک شی معمولی گرفته شده و Constructor آن صدا شده :


Cow myCow1 = new Cow("Deirdre");

از شی بالا برای پرکردن عضو اول ماتریس که میشود باهمان Constructor و عضو دوم ماتریس با Constructor فرزند با ورودی Ken درحال ایجاد است.


animalArray[0] = myCow1;
animalArray[1] = new Chicken("Ken");

البته اگر کد چند خط قبل را هم قرار میدادی بهتر برایت توضیح میدادم

رضا عربلو
یک شنبه 12 خرداد 1387, 17:31 عصر
هنگامیکه از strongly typed صحبت می شود منظور موجوداتی (برای مثال strongly typed Method) هستند که فرمت آنها (نوع مقدار بازگشتی و پارامترها) برای کامپایلر معلوم می باشد و در صورتی که شما از این قالب پیروی کنید یک خطای زمان کامپایل دریافت می کنید. این کار به شما کمک می کند که از خطاهایی که در زمان اجرا ممکن است به دلیل عدم تطابق این فرمت ها پیش بیاید جلوگیری کنید و اصلاحاً برنامه شما typed safty می شود.

akbaro
یک شنبه 12 خرداد 1387, 17:41 عصر
با سلام
دوست عزیز :
تنها یک شی معمولی گرفته شده و Constructor آن صدا شده :


Cow myCow1 = new Cow("Deirdre");

از شی بالا برای پرکردن عضو اول ماتریس که میشود باهمان Constructor و عضو دوم ماتریس با Constructor فرزند با ورودی Ken درحال ایجاد است.


animalArray[0] = myCow1;
animalArray[1] = new Chicken("Ken");

البته اگر کد چند خط قبل را هم قرار میدادی بهتر برایت توضیح میدادم
سلام. ممنون که راهنمایی میکنید. ولی این یک ماتریس نیست . این درس در مورد کلکسون ها ست. من میخوام فرقش رو بدونم یعنی بین اون دو نوع قرار دادن نمونه ها در ارایه. یکی با new صورت گرفته یکی قبلاً new شده و به طور ضمنی assign شده.