سلام به همه دوستان
یک سوال از خدمتون داشتم آیا میشه یک متد Override شده رو Overload کرد ؟ چرا ؟
ممنون از کمکتون
سلام به همه دوستان
یک سوال از خدمتون داشتم آیا میشه یک متد Override شده رو Overload کرد ؟ چرا ؟
ممنون از کمکتون
سلام
بله!
معمولاً خیلی از توابع موجود Overload هایی هم دارند که از تابع اصلی پارامتر کمتر با بیشتری میگیرد.
مثلاً تابعی برای رسم تصویر میتوانید چهار عدد برای مختصات مربع مقصد ترسیم را بگیرید.
یک Overload مناسب و منطقی برای این تابع میتواند فقط دو عدد برای مختصات نقطه ترسیم عکس رابگیرد.
(در واقع این Overload میتواند تابع اصلی اولیه را فراخوانی کند و دو عدد مختصات را که گرفته دو عدد ابعاد را هم با ابعاد تصویر اصلی پر کند.
البته نوع خاصی از Overload هم است که یکم تشریح بیشتری دارد و به نام Shadowing یا Shadows شناخته میشود.کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Shadows یک Overload است که هم نام و هم نوع و هم پارامتر (هم امضاء) یک یک متد موجود (قابل/غیر قابل Override) است که بجز موارد خیلی خاص پیشنهاد نمیشود و بهتر است انجام نشود. (ولی باز هم قابل انجام است)
موفق باشید.
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)