PDA

View Full Version : سوال: سوال در مرود override



roham_06
شنبه 23 مرداد 1389, 17:50 عصر
سلام توی یکی از برنامه های گتاب اقای هاشمیان با این کد برخورد کردم و مفهموش رو متوجه نشدم..توی خود کتاب هم زیاد در موردش نگفته..
گفتمک بیام از شا بپرسم ببینم چیه
مرسی

public double real;
public double imagin;

public override string ToString()
{
return (real + " + " + imagin + " i");
}

saeedalg
شنبه 23 مرداد 1389, 18:01 عصر
وقتی داخل کلاس Base (اصلی) یه متد رو virtual تعریف میکنن، یه پیاده سازی اولیه از اون متد ویذارن، و کسی که از اون کلاس اصلی مشتق میکنه و میخواد متدی با همون نام داشته باشه که وقتی فراخونی میشه به صورت دلخواه پیاده سازیش کنه، باید اون متد تو کلاس Base رو override کنه، تو see sharp همه چیز به صورت ضمنی از کلاسی با نام object به ارث میبرن، خود کلاس object متدی داره به اسم ToString حالا اگر میخواید این ToString رو به شکلی که خودتون میخواید تبدیلش کنید باید override کنیدش.
تا اینجا رو متوجه شدید خودتون فکر کنید که چرا اصلا نیازی باشه که متد رو به همون نام بنویسید؟

roham_06
شنبه 23 مرداد 1389, 19:39 عصر
من کلا override رو بلد نیستم :(

ricky22
شنبه 23 مرداد 1389, 22:23 عصر
override یعنی تغییر رفتار یک متد.
http://msdn.microsoft.com/en-us/library/ebca9ah3%28VS.71%29.aspx

arashmobileboy
دوشنبه 25 مرداد 1389, 16:05 عصر
منم override رو مشکل داشتم(منم کتاب استاد هاشمیان رو دارم میخونم)
ولی لینک زیر رو بخون فک کنم یه چیزایی متوجه بشی.من که از همینجا فهمیدم
http://www.barnamenevis.org/forum/showthread.php?t=70869