PDA

View Full Version : سوال: وقتی یه متد به صورت protected override void تعریف میشه چه کاربردی داره؟



maikola
پنج شنبه 16 تیر 1390, 10:14 صبح
سلام
وقتی یه متد به صورت protected override void تعریف میشه چه کاربردی داره؟

mehran_sh_t
پنج شنبه 16 تیر 1390, 12:30 عصر
اینطور که به نظر میاد یک تابع چند ریختیه که از اون می شه در کلاس هایی که ازش ارث می برید استفاده کرد و خروجی هم نداره.
بهتر بود اسم تابع رو هم می گفتید.

maikola
پنج شنبه 16 تیر 1390, 19:22 عصر
تابعش بصورت زیر:
protected override void OnClosed(EventArgs e)
{
mTimer.Stop();
mTimer.Dispose();
base.OnClosed(e);
}

استفاده از عبارت protected چه مزیتی داره؟یا در تابع زیر هم از اون استفاده شده

protected void CalcSinusFunction_0(DataSource src, int idx)
{
for (int i = 0; i < src.Length; i++)
{
src.Samples[i].x = i;
src.Samples[i].y = (float)(((float)200 * Math.Sin((idx + 1) * (i + 1.0) * 48 / src.Length)));
}
}

mehran_sh_t
سه شنبه 21 تیر 1390, 23:07 عصر
در مورد مثال اول میشه گفت با این دلیل هستش که بشه از کلاس های زیرین اون رو فراخونی کرد و در عین حال نشه از بیرون اون رو فراخونی کرد.
در مورد مثال دوم هم میشه دلیل بالا رو آورد ولی بستگی به نوع کاربرد داره... (دقت کنید که در تابع دوم خروجی هم دارید!)