Mục lục:
- Làm thế nào để xây dựng một critter dựa trên critter khác
- Làm thế nào để kế thừa gió (và bất cứ điều gì khác)
Video: [khóa học lập trình PHP] Kế thừa OOP - Lập trình php - gokisoft.com 2025
Lập trình hướng đối tượng trong PHP có một tính năng khác làm cho nó rất hữu ích cho các dự án lớn. Nhiều đối tượng có liên quan với nhau, và bạn có thể sử dụng một mối quan hệ cây gia đình để đơn giản hóa việc lập trình của bạn.
Làm thế nào để xây dựng một critter dựa trên critter khác
Có một critter mới trong thị trấn. Điều này có cùng một tính năng cơ bản, nhưng một thái độ tồi tệ hơn. Hãy xem mã để xem điều gì đang xảy ra:
kế thừa. "//} Cuối cùng glower // nếu bạn over-write một phương thức hiện tại, hành vi thay đổi chức năng công cộng talk () {return" Không có doanh nghiệp của bạn! ";} / / Nói chuyện cuối } // end class def $ a = new BitterCritter (); print $ a-> glower (). "", in $ a-> talk (). "
"??>
Điều này Ví dụ là một minh hoạ cho một tình huống lập trình rất phổ biến, nơi mà bạn muốn có một chuyên môn của một lớp học đã được xác định trước đó đã có một lớp Critter, nhưng bạn muốn có một loại Critter mới.Các critter mới (BitterCritter) bắt đầu với cùng một đặc điểm chung của con vật bình thường, nhưng mang lại một twist mới Ý tưởng hướng đối tượng thừa kế là một cách hoàn hảo để xử lý tình huống này.
JavaScript hỗ trợ một hình thức lập trình hướng đối tượng khác nhau dựa trên một ý tưởng được gọi là tạo mẫu chứ không phải là thừa kế. Người ta có cuộc trò chuyện dài và nhàm chán về kỹ thuật nào là tốt hơn, nhưng cuối cùng nó không quan trọng mu ch. Hầu hết các ngôn ngữ OOP hỗ trợ các hình thức thừa kế được sử dụng trong PHP, do đó, bạn nên thực sự biết nó hoạt động như thế nào.
Làm thế nào để kế thừa gió (và bất cứ điều gì khác)
Dưới đây là cách thực hiện việc thừa kế:
-
Bắt đầu với một lớp hiện có.
Đối với ví dụ này, bạn bắt đầu với lớp Critter thông thường, bạn nhập với hàm require_once ().
-
Tạo lớp học mới với từ khóa mở rộng.
Khi bạn xác định lớp học, nếu bạn sử dụng từ khóa mở rộng để chỉ ra lớp bạn đang kế thừa, lớp mới của bạn sẽ bắt đầu bằng tất cả các thuộc tính và phương thức của lớp cha mẹ.
-
Bạn có thể truy cập vào các yếu tố công cộng và bảo vệ của cha mẹ, nhưng không phải là các cá nhân.
Nếu một thuộc tính hoặc phương thức được định nghĩa là private trong lớp gốc, thì đó thực sự là một công việc của người khác. Không có đoạn mã nào khác có thể truy cập phần tử đó. Nói chung, khi bạn thừa hưởng từ một lớp học, lớp con mới nên có quyền truy cập vào các phần tử của lớp cha mẹ. Đó là lý do tại sao bạn nên tạo các thuộc tính dưới được bảo vệ thay vì tư nhân.
-
Thêm thuộc tính và phương pháp mới.
Bạn có thể mở rộng lớp học mới với các thuộc tính và phương pháp bổ sung mà cha mẹ không có. Các BitterCritter bây giờ có một glower () phương pháp mà critters bình thường không có.
-
Bạn cũng có thể ghi đè lên hành vi của cha mẹ.
Nếu bạn định nghĩa lại một phương pháp mà lớp cha mẹ có, bạn đang thay đổi hành vi của lớp mới. Điều này cho phép bạn sửa đổi hành vi hiện tại (một dạng của một ý tưởng hướng đối tượng được gọi là đa hình 999). Trình diễn này chỉ là cái nhìn thoáng qua trong chương trình hướng đối tượng. Có rất nhiều hình thức phát triển phần mềm này, nhưng những điều cơ bản là tất cả ở đây. Mặc dù bạn có thể không thấy sự cần thiết phải xây dựng các đối tượng của riêng mình từ đầu, bạn chắc chắn sẽ gặp mã PHP hướng đối tượng khi bạn bắt đầu khám phá những ý tưởng phức tạp hơn như lập trình dữ liệu và các hệ thống quản lý nội dung.