جاوا

جلسه ۳۱: مزایای وراثت در جاوا

در این جلسه، شما با مزایای استفاده از وراثت آشنا خواهید شد.

موارد زیر را بیان خواهیم کرد:

  • قابلیت استفاده مجدد
  • جلوگیری از تکرار کد
  • قابلیت گسترش
  • پنهان سازی داده ها

 

قابلیت استفاده مجدد

کدی که از وراثت استفاده کند قابلیت استفاده مجدد دارد. فرض کنید که شما در صدد طراحی سیستم بانکی با استفاده از کلاس ها هستید. مدل شما ممکن است این موارد را داشته باشد:

  • یک کلاس پایه BankAccount
  • یک کلاس مشتق شده به نام SavingsAccount
  • یک کلاس مشتق شده به نام CheckingAccount

در مرحله بعد ، متوجه می شوید که باید با افزودن کلاس دیگری برای MoneyMarketAccount ، این برنامه بانکی را گسترش دهید. بنابراین ، به جای پیاده سازی این کلاس از ابتدا ، می توانید از کلاس موجود BankAccount به عنوان نقطه شروع استفاده کرده و از ویژگی های آن که با MoneyMarketAccount مشترک است استفاده مجدد کنید. برای این کار کافی است که کلاس MoneyMarketAccount از BankAccount ارث بری داشته باشد.

در مثال بالا ، ما می توانیم ببینیم که بکارگیری وراثت منجر به جلوگیری از کد نویسی اضافی و تکراری می شود و همچنین باعث صرفه جویی در وقت و انرژی برنامه نویس می شود.

جلوگیری از تکرار کد

با توجه به مثال فوق ، نیازی به کپی کردن کد برای متدهای ()deposit و ()withdraw داخل کلاس های فرزند یعنی SavingsAccount و CheckingAccount نیست. به این ترتیب می توانید از تکرار کد جلوگیری کنید.

قابلیت گسترش

با استفاده از وراثت ، می توان منطق کلاس پایه را از طریق منطق کلاس مشتق شده گسترش داد. این یک روش آسان برای ارتقا یا بهبود بخشهای خاص یک محصول بدون تغییر در ویژگیهای اصلی است. یک کلاس موجود می تواند به عنوان یک کلاس پایه برای بدست آوردن یک کلاس جدید با ویژگی های ارتقا یافته عمل کند.

پنهان سازی داده ها

کلاس پایه می تواند تصمیم بگیرد که برخی از داده ها را خصوصی نگه دارد تا توسط کلاس مشتق شده قابل تغییر نباشد. این مفهوم یعنی کپسوله سازی در جلسات قبل مورد بحث قرار گرفت.

موارد ذکر شده برخی از مزایای اصلی وراثت بود. در جلسه بعدی به مبحث چندریختی (polymorphism) می پردازیم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا