Tôi đang cố gắng cải thiện kiến thức về OOP trong PHP và đã nghiên cứu các lớp và giao diện trừu tượng.Ví dụ thế giới thực của các tính năng OOP nâng cao cho PHP
Những gì tôi đã học được
- Họ là cả hai lớp mà không thể được khởi tạo tự nhưng olny có thể được mở rộng (thực hiện trong trường hợp các giao diện)
- Các lớp trừu tượng cung cấp phương pháp và tài sản cho các lớp học khác mở rộng chúng.
- Nếu một lớp sử dụng một phương thức trừu tượng thì bản thân lớp đó cũng phải là trừu tượng.
- Nếu một phương thức trừu tượng được định nghĩa trong một lớp trừu tượng, tất cả các lớp con phải xác định các chi tiết của phương thức đó. Các phương thức không được định nghĩa là abstract có thể được sử dụng giống như các phương thức thông thường.
- Giao diện xác định những phương thức mà một lớp thực hiện nó phải có. Chức năng của các phương thức không được định nghĩa trong giao diện, giao diện chỉ cung cấp một danh sách các phương thức phải được đưa vào lớp con.
- Giao diện không xác định bất kỳ thuộc tính nào.
- Lớp học có thể thực hiện nhiều giao diện như họ muốn nhưng họ phải xác định một phương pháp cho mỗi một trong những giao diện mà họ thực hiện
Tôi nghĩ rằng bao gồm những điều cơ bản. Xin vui lòng thêm vào đó nếu bạn nghĩ rằng có bất cứ điều gì tôi đã bỏ qua.
Điều tôi muốn biết là nếu có bất kỳ ví dụ thực tế nào về việc triển khai các lớp này, đặc biệt là lớp giao diện. Có ai biết về bất kỳ ứng dụng nguồn mở nào sử dụng chúng mà tôi có thể duyệt để hiểu rõ hơn về chúng và xem vị trí và thời điểm chúng được sử dụng hiệu quả không? Tôi đã xem qua các ví dụ về sách sử dụng động vật không thể hiện được tầm quan trọng của các lớp này.
Ngoài ra, ZF2 đang tiến hành wiki: http://framework.zend.com/wiki/display/ZFDEV2 – joksnet
@Gordon: hãy tìm ví dụ tại địa chỉ đó: http://www.php.net/manual/en /class.splheap.php – vartec
@Gordon, chỉnh sửa câu trả lời – vartec