Computer >> Máy Tính >  >> Lập trình >> PHP

Từ khóa cuối cùng trong PHP

Giới thiệu

Sử dụng cuối cùng từ khóa trong định nghĩa của một phương thức thể hiện trong một lớp PHP ngăn nó không bị lớp con ghi đè. Tương tự, nếu cuối cùng được sử dụng trong định nghĩa của chính lớp, thì một lớp như vậy không thể được mở rộng.

Cú pháp

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

ví dụ về phương thức cuối cùng

Trong ví dụ sau, cố gắng ghi đè phương thức cuối cùng dẫn đến lỗi

Ví dụ

<?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();
?>

Đầu ra

Đầu ra hiển thị thông báo lỗi sau

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

ví dụ về lớp cuối cùng

Tương tự, một lớp cuối cùng không thể được kế thừa từ như ví dụ sau đây cho thấy

Ví dụ

<?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();
?>

Đầu ra

Đầu ra hiển thị thông báo lỗi sau

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