Bài tập lập trình hướng đối tượng trong php năm 2024

Trước khi đi vào chi tiết, hãy xác định các thuật ngữ quan trọng liên quan đến Lập trình hướng đối tượng.

Bài tập lập trình hướng đối tượng trong php năm 2024

Các khái niệm cơ bản trong lập trình hướng đối tượng

Khái niệm: Lớp, đối tượng biến, hàm thành viên

Lớp - Đây là kiểu dữ liệu do người lập trình xác định, bao gồm các hàm cục bộ cũng như dữ liệu cục bộ. Bạn có thể coi một lớp như một khuôn mẫu để tạo ra nhiều thể hiện của cùng một loại (hoặc lớp) đối tượng.

Đối tượng - Một thể hiện riêng lẻ của cấu trúc dữ liệu được xác định bởi một lớp. Bạn xác định một lớp một lần và sau đó tạo nhiều đối tượng thuộc về nó. Đối tượng còn được gọi là thể hiện.

Biến thành viên - Đây là các biến được định nghĩa bên trong một lớp. Dữ liệu này sẽ vô hình đối với bên ngoài lớp và có thể được truy cập thông qua các hàm thành viên. Các biến này được gọi là thuộc tính của đối tượng khi một đối tượng được tạo.

Hàm thành viên - Đây là những hàm được định nghĩa bên trong một lớp và được sử dụng để truy cập dữ liệu đối tượng.

\>>> Đọc thêm: Tại sao nên sử dụng PHP - Lợi ích của việc sử dụng PHP

Khái niệm: Kế thừa, lớp cha, lớp con, đa hình

Kế thừa - Khi một lớp được định nghĩa bằng cách kế thừa chức năng hiện có của một lớp cha thì nó được gọi là kế thừa. Ở đây lớp con sẽ kế thừa tất cả hoặc một vài hàm thành viên và các biến của một lớp cha.

Lớp cha - Một lớp được kế thừa từ một lớp khác. Đây còn được gọi là lớp cơ sở hoặc siêu lớp.

Lớp con - Lớp kế thừa từ lớp khác. Đây còn được gọi là lớp con hoặc lớp dẫn xuất.

Đa hình - Đây là một khái niệm hướng đối tượng trong đó cùng một chức năng có thể được sử dụng cho các mục đích khác nhau. Ví dụ: tên hàm sẽ giữ nguyên nhưng nó có số lượng đối số khác nhau và có thể thực hiện các tác vụ khác nhau.

Khái niệm: nạp chồng, trừu tượng hóa dữ liệu, encapsulation, bộ hủy

Nạp chồng - một kiểu đa hình trong đó một số hoặc tất cả các toán tử có các cách triển khai khác nhau tùy thuộc vào loại đối số của chúng. Tương tự, các chức năng cũng có thể được nạp chồng với các cách triển khai khác nhau.

Trừu tượng hóa dữ liệu - Bất kỳ biểu diễn dữ liệu nào trong đó chi tiết triển khai được ẩn (trừu tượng hóa).

Encapsulation - đề cập đến một khái niệm trong đó chúng ta đóng gói tất cả dữ liệu và các hàm thành viên lại với nhau để tạo thành một đối tượng.

Constructor - dùng để chỉ một loại đặc biệt của chức năng đó sẽ được gọi tự động bất cứ khi nào có một hình tượng từ một lớp học.

Bộ hủy - đề cập đến một loại chức năng đặc biệt sẽ được gọi tự động bất cứ khi nào một đối tượng bị xóa hoặc ra khỏi phạm vi.

Các định nghĩa chi tiết trong lập trình hướng đối tượng PHP

Lớp và đối tượng trong lập trình hướng đối tượng trong PHP

Một đối tượng trong PHP là một thể hiện riêng lẻ của cấu trúc dữ liệu được định nghĩa bởi một lớp. Chúng ta có thể xác định một lớp trong một lần và sau đó tạo nhiều đối tượng thuộc về nó. Đối tượng còn được gọi là instance.

  • Lớp là một kiểu dữ liệu do người lập trình xác định, bao gồm các phương thức cục bộ và các biến cục bộ.
  • Lớp là một tập hợp các đối tượng. Đối tượng có thuộc tính và hành vi.
  • Đầu tiên, chúng ta phải xác định một lớp php, trong đó tên lớp phải giống với tên tệp.

Ví dụ về một lớp:

class Books {

// Members of class Books

}

// Creating three objects of Books

$physics = new Books;

$maths = new Books;

$chemistry = new Books;

\>>> Tham khảo: Khóa học lập trình PHP

Hàm thành viên lập trình hướng đối tượng PHP

Sau khi tạo các đối tượng của mình, bạn sẽ có thể gọi các hàm thành viên liên quan đến đối tượng đó. Một hàm thành viên sẽ chỉ có thể xử lý biến thành viên của đối tượng liên quan.

Ví dụ sau đây cho thấy cách đặt tiêu đề và giá cho ba cuốn sách bằng cách gọi các hàm thành viên.

$physics->setTitle( "Physics for High School" );

$chemistry->setTitle( "Advanced Chemistry" );

$maths->setTitle( "Algebra" );

$physics->setPrice( 10 );

$chemistry->setPrice( 15 );

$maths->setPrice( 7 );

Bây giờ bạn gọi các hàm thành viên khác để nhận các giá trị được đặt trong ví dụ trên -

$physics->getTitle();

$chemistry->getTitle();

$maths->getTitle();

$physics->getPrice();

$chemistry->getPrice();

$maths->getPrice();

Điều này sẽ tạo ra kết quả sau:

Physics for High School

Advanced Chemistry

Algebra

10

15

7

Tính kế thừa trong PHP lập trình hướng đối tượng PHP

Các định nghĩa về lớp trong PHP có thể thừa kế tùy chọn từ một lớp cha bằng cách sử dụng câu lệnh expand. Cú pháp như sau:

class Child extends Parent {

}

Hiệu quả của việc kế thừa là lớp con có các đặc điểm như sau:

  • Tự động có tất cả biến khai báo thành viên của lớp cha
  • Tự động có tất cả hàm thành viên như lớp cha, chúng cũng sẽ hoạt động tương tự như với lớp cha

Ví dụ dưới đây sẽ thừa kế lớp mang tên Books và thêm nhiều hàm hơn theo yêu cầu:

class Novel extends Books {

var $publisher;

function setPublisher($par){

$this->publisher = $par;

}

function getPublisher(){

echo $this->publisher. "
";

}

}

Bây giờ ngoài hàm kế thừa, lớp Novel còn giữ thêm hai hàm bổ sung bên dưới.

Hàm ghi đè trong PHP lập trình hướng đối tượng PHP

Các định nghĩa hàm trong các lớp con ghi đè các định nghĩa có cùng tên trong các lớp cha. Trong một lớp con, chúng ta có thể sửa đổi định nghĩa của một hàm được kế thừa từ lớp cha.

Trong ví dụ sau, các hàm getPrice và getTitle được ghi đè để trả về một số giá trị như sau:

function getPrice() {

echo $this->price . "
";

return $this->price;

}

function getTitle(){

echo $this->title . "
";

return $this->title;

}

Hằng số lập trình hướng đối tượng PHP

Một hằng số tương đối giống một biến, ở chỗ nó giữ một giá trị, nhưng thực sự giống một hàm hơn vì một hằng số là bất biến. Khi bạn khai báo một hằng số, nó không thay đổi.

Khai báo một hằng số rất dễ dàng, như được thực hiện trong phiên bản MyClass này:

class MyClass {

const requiredMargin = 1.7;

function __construct($incomingValue) {

// Statements here run every time

// an instance of the class

// is created.

}

}

Trong lớp này, RequiredMargin là một hằng số. Nó được khai báo với từ khóa const, và trong mọi trường hợp, nó không thể được thay đổi thành bất kỳ thứ nào khác. Lưu ý tên của hằng số không bắt đầu bằng ký hiệu $ như tên biến.

Kết luận: Bài viết trên đã giới thiệu về lập trình hướng đối tượng PHP cũng các khái niệm và ví dụ về các thành phần trong lập trình với PHP. Hy vọng bạn có thể nắm rõ các kiến thức này và áp dụng trong quá trình làm việc. Tìm hiểu thêm về lập trình PHP và các ngôn ngữ lập trình khác qua các khóa học lập trình tại T3H.