PDA

View Full Version : سوال: تبدیل متد public کلاس پایه به متد private در کلاس مشتق شده



alireza4474
دوشنبه 27 دی 1395, 18:42 عصر
سلام
میخواستم بپرسم اگه توی یه کلاس متد به صورت پابلیک تعریف شده باشه چجوری میتونم توی کلاسی که از اون کلاس ارثبری کردم متد مد نظر رو از پابلیک به پرایویت تبدیل کنم؟

ژیار رحیمی
دوشنبه 27 دی 1395, 22:00 عصر
به اون صورتی که شما بیان کردین امکان پذیر نیست.شما بهتره متد رو در کلاس پایه protected تعریف کن که فقط در خود کلاس و زیر کلاس های مشتق شده از آن قابل دسترسی باشد.

مهرداد صفا
سه شنبه 28 دی 1395, 11:58 صبح
سلام
میخواستم بپرسم اگه توی یه کلاس متد به صورت پابلیک تعریف شده باشه چجوری میتونم توی کلاسی که از اون کلاس ارثبری کردم متد مد نظر رو از پابلیک به پرایویت تبدیل کنم؟


سلام.
می تونید یک متود جدید به همون نام در کلاس مشتق شده ایجاد کنید. به این صورت:



class Base
{
public virtual void Test()
{
Console.WriteLine("Base.Test");
}
}

class Drived:Base
{
private new void Test()
{
base.Test();
Console.WriteLine("Drived.Test");
}
}

alireza4474
پنج شنبه 30 دی 1395, 09:42 صبح
اول از همه ممنون
بعد میخواستم بگم که کلاس base رو خودم ننوشتم
در این حالت بازم جوابتون کار میده؟