Hướng dẫn what is the meaning of final class in php? - ý nghĩa của lớp cuối cùng trong php là gì?

Hướng dẫn what is the meaning of final class in php? - ý nghĩa của lớp cuối cùng trong php là gì?

Định nghĩa của lớp cuối cùng PHP

Php Final Class là một lớp ngăn chặn việc ghi đè một phương pháp của các lớp con chỉ bằng tiền tố cuối cùng với định nghĩa. Điều đó có nghĩa là nếu chúng ta xác định một phương thức với tiền tố cuối cùng thì nó sẽ ngăn chặn việc ghi đè phương thức. Thông thường, sự kế thừa của khái niệm PHP OOPS sẽ cho phép sự linh hoạt to lớn trong hệ thống phân cấp lớp. Bạn có thể tạo một hoặc nhiều lớp con được sử dụng để mở rộng chức năng lớp cơ sở, nhưng khái niệm OOPS về PHP đưa ra một cách để tạo các lớp không thể mở rộng. Các lớp/lớp như vậy được/được gọi là lớp cuối cùng/lớp cuối cùng.

Syntax:

final class Pavan{ }
final public function set_bike(){}

Php Final Class hoạt động như thế nào?

Php Final Class hoạt động dựa trên khai báo chỉ bằng cách thêm từ khóa cuối cùng trước từ lớp. Lớp cuối cùng hoạt động mà không mở rộng lớp học. Lớp con có thể ghi đè các phương pháp cuối cùng. Các biến lớp bình thường không thể được sử dụng để khai báo là cuối cùng. Lớp cuối cùng PHP hoặc phương pháp có thể được mở rộng giống như các lớp bình thường khác. Nếu lớp cuối cùng được mở rộng bằng cách sử dụng bất kỳ lớp bình thường nào khác thì lớp cuối cùng sẽ khiến PHP trả về lỗi nghiêm trọng trong đầu ra của trình duyệt. Tương tự như vậy, phương pháp cuối cùng cũng vậy.

Ví dụ về lớp cuối cùng của PHP

Sau đây là các ví dụ được đưa ra dưới đây:

Ví dụ 1

Ở đây một lớp được tạo bằng cách sử dụng từ khóa cuối cùng trước lớp. Lớp cuối cùng này có thể mở rộng lớp học này. Bên trong lớp cuối cùng, các phương thức/chức năng cuối cùng được tạo ra. Sau đó, lớp bình thường BMWCAR1, được tạo bằng phương thức/hàm và sau đó tạo phương thức/hàm cuối cùng bên trong các thẻ đoạn văn. Sau đó, một lớp học Tata1, được tạo ra để mở rộng BMWCAR1, có hàm/phương thức bình thường Hiển thị (), nhưng phương thức giá () không được tạo trong lớp Tata1 vì gọi nó sẽ cung cấp lỗi nghiêm trọng vì từ khóa cuối cùng . Nó là không thể mở rộng. Sau đó, đối tượng $ bmwcar1 của người Viking được tạo/tạo. Các phương thức gọi () và phương thức cuối cùng Giá () được thực hiện từ lớp BMWCAR1 và lớp Tata1.

Code:

<?php
final   class   Automobile1{
final    public  function   set_color1(){   }
final    public  function   show1(){  }
}
class  Bmwcar1{
public  function   display1(){ echo "This is the bmwcar1 class \n";}
final public function  price1(){echo "This is the bmwcar1 class's final price method \n";}
}
class  Tata1   extends   Bmwcar1{
public   function  display1(){   echo  "This is tata1 class \n";}
}
$bmwcar1  =  new  Bmwcar1();
$tata1 =   new  Tata1();
$bmwcar1->display1();
$bmwcar1->price1();
$tata1->display1();
$tata1->price1();
?>

Output:

Hướng dẫn what is the meaning of final class in php? - ý nghĩa của lớp cuối cùng trong php là gì?

Ví dụ #2

Ở đây, lớp A1 A1 được tạo với từ khóa cuối cùng. Sau đó, hàm bình thường, show show1 () được tạo với hai biến. Bên trong của nó tổng của các biến sẽ được lưu trữ trong biến $ sum1. Sau đó, hàm Echo được sử dụng để in tổng giá trị biến. Sau đó, lớp B1 B1 được tạo ra để mở rộng lớp A1 A1. Bên trong phép nhân lớp B1 B1 của các biến được thực hiện và lưu trong biến $ multi1. Kết quả nhân được in bằng cách sử dụng chức năng Echo nhưng ở đây chúng tôi đang mở rộng lớp cuối cùng là A1 A1 với lớp bình thường. Ở đây chúng tôi mở rộng lớp/phương pháp cuối cùng. Nó trả về lỗi nghiêm trọng vì chúng tôi mở rộng một lớp cuối cùng.

Code:

<?php
final Class A1
{
function show1($x1,$y1)
{
$sum1=$x1+$y1;
echo "Sum of the given no.s = ".$sum1;
}
}
class B1 extends A1
{
function show($x1,$y1)
{
$multi1=$x1*$y1;
echo "The Multiplication of the given no.s = ".$multi1;
}
}
$obj1= new B1();
$obj1->show1(1001,1001);
?>

Output:

Hướng dẫn what is the meaning of final class in php? - ý nghĩa của lớp cuối cùng trong php là gì?

Ví dụ #3

Ở đây, một lớp bình thường, C1 C1 với chức năng E ($ xx1) được tạo ra sau đó một lớp D1 D1 được tạo ra để mở rộng lớp C1 C1 để sử dụng các tham số của C1 C1. Vì vậy, lớp D1 D1 sẽ kế thừa các thuộc tính lớp của C1 C1 và cũng sẽ chứa các thuộc tính của lớp D1 D1. Cho đến đây mọi thứ đều đúng. Sau đó, một lớp A1 A1 được tạo ra với chức năng/phương thức cuối cùng bên trong nó với các biến của X1 X1, các biến của Y1, tính toán tổng của các biến. Sau khi lớp B1 B1 này được tạo ra để mở rộng lớp A1 A1. Nhưng các lớp cuối cùng, các phương pháp là không thể mở rộng. Nếu đã cố gắng gây ra lỗi nghiêm trọng sẽ xảy ra.

Code:

<?php
class C1
{
function e($xx1){
echo 'The value of xx1 variable value'.$xx1;
}
}
class D1 extends C1
{
function e($xx1){
$f=2*$xx1;
echo 'The double value of f (xx1)'.$f;
}
}
class A1
{
final function show($x1,$y1)
{
$sum1=$x1+$y1;
echo "Sum of given no=".$sum1;
}
}
class B1 extends A1
{
function show($x1,$y1)
{
$mult1=$x1*$y1;
echo "Multiplication of given no=".$mult1;
}
}
$obj=new D1();
$obj->e(13);
$obj= new B1();
$obj->show(100,100);
?>

Output:

Hướng dẫn what is the meaning of final class in php? - ý nghĩa của lớp cuối cùng trong php là gì?

Ví dụ #4

Trong ví dụ dưới đây, một lớp bình thường được tạo lúc đầu và sau đó một phương thức cuối cùng được tạo bên trong nó với hai biến để tính tổng của hai giá trị biến thì một phương thức/hàm mới được tạo bên trong lớp bình thường Để nhân hai giá trị biến và trả về kết quả. Ở đây chỉ có một phương thức cuối cùng được tạo và được gọi mà không cần mở rộng để sẽ không có lỗi/lỗi. Tổng của các biến và cả phép nhân của các biến sẽ được in.

Code:

<?php
class BaseClassone{
final function calculateone($val11,$val12){
$sum1 = $val11+$val12;
echo "Sum of the given nums = ".$sum1;
}
function showone($x1,$y1){
$multip1=$x1*$y1;
echo "Multiplication of the given nums = ".$multip1."\n";
}
}
$obj= new BaseClassone();
$obj->showone(12,12);
$obj->calculateone(10,10);
?>

Output:

Hướng dẫn what is the meaning of final class in php? - ý nghĩa của lớp cuối cùng trong php là gì?

Thuận lợi

Khái niệm lớp cuối cùng PHP là duy nhất và không thể mở rộng như các lớp bình thường. Giống như các lớp cuối cùng, các phương pháp cuối cùng cũng không thể mở rộng theo một cách duy nhất. Khái niệm lớp cuối cùng của PHP sẽ ngăn chặn chức năng kế thừa lớn và cũng khuyến khích thành phần. Tất cả các API công khai của lớp cuối cùng là/là một phần của giao diện/giao diện. Nó giúp đóng gói. Lớp/Phương thức cuối cùng sẽ ngăn lớp/Phương thức ghi đè các lớp/phương thức con. Các lớp/lớp cuối cùng của PHP sẽ ngăn ngừa khai thác. Mặc dù các lớp/lớp cuối cùng có thể được mở rộng nhưng các lớp cuối cùng này có thể mở rộng ở một số điều kiện. Nó giống như lớp cuối cùng trở thành hoặc có thể trở thành một lớp con nhưng nó có thể được biến thành một siêu lớp.

Từ khóa cuối cùng của PHP thậm chí có thể được đặt ngay trước hoặc ngay sau khi xác định chỉ định truy cập. Phương pháp/Phương thức cuối cùng của PHP cũng không có loại/loại trả về cụ thể/được chỉ định và tên/tên phương thức.

Bài viết đề xuất

Đây là một hướng dẫn cho lớp cuối cùng PHP. Ở đây chúng tôi thảo luận về định nghĩa và hoạt động của lớp cuối cùng của PHP cùng với các ví dụ khác nhau và việc triển khai mã của nó. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm -

  1. Tài liệu tham khảo PHP
  2. Lỗi nhật ký PHP
  3. Tìm kiếm mảng PHP
  4. Lớp học trừu tượng trong PHP

Phương pháp cuối cùng trong PHP là gì?

Phương pháp cuối cùng: Một phương thức được coi là một phương thức cuối cùng nếu nó được đặt trước với từ khóa cuối cùng. Các phương pháp cuối cùng là các phương pháp không thể được ghi đè. Vì vậy, các phương pháp này không thể được ghi đè trong các lớp con/con.methods that cannot be overridden. So, these methods can't be overridden in child/subclasses.

Ý nghĩa của lớp cuối cùng là gì?

Một lớp cuối cùng là một lớp không thể mở rộng.Ngoài ra các phương thức có thể được khai báo là cuối cùng để chỉ ra rằng không thể bị ghi đè bởi các lớp con.Ngăn chặn lớp không được phân nhóm có thể đặc biệt hữu ích nếu bạn viết API hoặc thư viện và muốn tránh được mở rộng để thay đổi hành vi cơ sở.a class that can't be extended. Also methods could be declared as final to indicate that cannot be overridden by subclasses. Preventing the class from being subclassed could be particularly useful if you write APIs or libraries and want to avoid being extended to alter base behaviour.

Lớp cuối cùng giải thích với ví dụ là gì?

Lớp cuối cùng là một lớp được khai báo với từ khóa cuối cùng.Chúng ta có thể hạn chế kế thừa lớp bằng cách sử dụng lớp cuối cùng.Lớp cuối cùng có nghĩa là lớp không thể được mở rộng hoặc kế thừa.Nếu chúng ta cố gắng kế thừa một lớp cuối cùng, thì trình biên dịch đã đưa ra một lỗi trong quá trình biên dịch.a class that is declared with the final keyword. We can restrict class inheritance by making use of the final class. final class means that the class cannot be extended or inherited. If we try to inherit a final class, then the compiler throws an error during compilation.

Việc sử dụng các lớp cuối cùng là gì?

Mục đích chính của việc sử dụng một lớp được tuyên bố là cuối cùng là để ngăn lớp được phân lớp.Nếu một lớp được đánh dấu là cuối cùng thì không có lớp nào có thể kế thừa bất kỳ tính năng nào từ lớp cuối cùng.Bạn không thể mở rộng một lớp cuối cùng.to prevent the class from being subclassed. If a class is marked as final then no class can inherit any feature from the final class. You cannot extend a final class.