কম্পিউটার টিউটোরিয়াল

PHP final কিওয়ার্ড


ভূমিকা

PHP ক্লাসে একটি ইনস্ট্যান্স মেথডের ডেফিনিশনে final কিওয়ার্ড ব্যবহার করলে সেটি চাইল্ড ক্লাস দ্বারা ওভাররাইড করা থেকে বাধা দেয়। একইভাবে, যদি ক্লাস ডেফিনিশনে final ব্যবহার করা হয়, সে ক্লাস এক্সটেন্ড করা যাবে না।

সিনট্যাক্স

final class myclass {}
class myclass{
    final method mymethod() {}
}

final মেথড উদাহরণ

নিচের উদাহরণে, final মেথড ওভাররাইড করার চেষ্টা এরর দেয়:

উদাহরণ

<?php
class parentclass{
    final function test(){
        echo "final method in parent class";
    }
}
class childclass extends parentclass{
    function test(){
        echo "overriding final method in parent class";
    }
}
$obj=new childclass();
$obj->test();
?>

আউটপুট

আউটপুট নিচের এরর মেসেজ দেখায়:

PHP Fatal error: Cannot override final method parentclass::test() in line 16

final ক্লাস উদাহরণ

একইভাবে একটি final ক্লাস ইনহেরিট করা যাবে না, নিচের উদাহরণটি দেখায়:

উদাহরণ

<?php
final class parentclass{
    final function test(){
        echo "final method in parent class";
    }
}
class childclass extends parentclass{
    function test(){
        echo "overriding final method in parent class";
    }
}
$obj=new childclass();
$obj->test();
?>

আউটপুট

আউটপুট নিচের এরর মেসেজ দেখায়:

PHP Fatal error: Class childclass may not inherit from final class (parentclass) in line 16

  1. C#-এ ফাইনাল কীওয়ার্ড (Final Keyword) - sealed ব্যবহার

  2. C#-এ static কিওয়ার্ড

  3. জাভাতে ফাইনাল ক্লাস

  4. জাভাতে final কীওয়ার্ড