برنامه نویسی شی گرا - قسمت چهارم
چند شکلی بودن - Polymorphism :
ادامه مطالب به زودی . . . .
مفهوم چند شکلی یعنی این که یک شی یا موجودیت در شرایط مختلف رفتار متفاوت و مناسب داشته باشد .مثلا اگر در یک حلقه تابع toString را روی آرایه ای از اشیاء ( که نوعا متفاوت، اما همه فرزندان Object هستند ) صدا بزنیم، هر کدام به طریق مناسب خود را معرفی می کنند .
- چند شکلی، امکان برنامه نویسی آینده نگر را فراهم می کند Future proof
- متغیر چند شکلی متغیری است که می تواند انواع مختلف داده را بگیرد مثلا [] object objArray = object
- با استفاده از چندشکلی هرچند تنها روال های پدر قابل مشاهده است اما در صورت وجود، روال های متناظر فرزند ( نوع حقیقی True-Type ) صدا زده می شود
- خالص (جایگذاری)
- پارامتری
- سربارگذاری
- کاهش کد نویسی
- درک بهتر کد
- امکان توسعه آسان
[Queue[T
و
([T] Add (a[T],b[T]
نمونه های دیگری از کاربرد چند شکلی هستند
و
([T] Add (a[T],b[T]
نمونه های دیگری از کاربرد چند شکلی هستند
- سعی کنید روابط را از پیاده سازی جدا کرده و بجز کلاس های برگ، سایر کلاس ها را مجرد abstract تعریف کنید
- هیچ گاه وراثت صحیح را قربانی چند شکلی نکنید و روال ها را بی جهت در سلسله مراتب ارث بری بالا نبرید
- فراموش نکنید که چند شکلی، سرعت اجرا را تا حدودی پایین می آورد
ادامه مطالب به زودی . . . .
تبلیغات

مدیر وبلاگ :