کلاس های FinalوAbstract در PHP

در پست قصد دارم به معرفی کلاس هایی از نوع abstract و کلاس final در شی گرا بپردازیم. مثال هایی از این نوع کلاس به زبان PHP بزنیم.

کلاس های abstract :

کلاس هایی که از نوع abstract تعریف شوند نمی توان از آنها شی ساخت.

و فقط می توانیم از متدها و پراپرتی های این نوع کلاس در کلاس های مشتق شده از آن استفاده کنیم.

مثال :

کد بالا خطا دارد دلیل آن هم اینه که از کلاس iwebpro به صورت abstract تعریف شده.

abstract کردن متد های داخل کلاس :

اگر متد های داخل کلاس را به صورت Abstract تعریف کنیم می توانیم متدهایمان را بدون بدنه تعریف کنیم و در کلاس هایی که از این کلاس مشتق می شوند متد های بدون بدنه را تکمیل کنیم.

نکته : متد هایی که به صورت abstract تعریف شده اند باید کلاسشان نیز abstract باشد.

 کلاس های final :

کلاس هایی که به صورت Final تعریف شوند قابل ارث بری، برای سایر کلاس ها نیستند.

کد بالا خطا دارد دلیل آن هم اینه که کلاس iwebpro به صورت final تعریف شده و قابل ارث بری برای کلاس My_web_site نیست.

متد های final :

متد هایی که به صورت final تعریف شوند دیگه در سایر کلاس های مشتق شده قابل بازنویسی نیستند.

کد بالا خطا میده دلیل آن هم اینه که متد name  به صورت final تعریف شده و قابل بازنویسی در کلاس مشتق شده  نیست.

موفق باشید.


پست های مرتبط

   دیدگاه ها

یک دیدگاه

  1. محمد رضا گفت:

    ممنون، برای من مفید بود.

ارسال نظرات

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