static và const | static- static được phép sử dụng trên property và method.. static và const | const- const chỉ được phép sử dụng trên property.- Ảnh hưởng của const lên property:+ Prope
Trang 2Nội dung
Magic method
Abstract class, Interface
và Trait Class và những khái niệm liên quan
Trang 3và những khái niệm liên quan
Trang 41 Khởi tạo và khai báo class
Khai báo một class
Khởi tạo một
instance của class
Trang 52 Thuộc tính và phương thức | Khai báo
Thuộc tính(Property)
Phương thức(Method)
Trang 62 Thuộc tính và phương thức | Truy xuất
Truy xuất trong class
Truy xuất ngoài class
Trang 73 static và const | static
- static được phép sử dụng trên property và method.
- Những thành viên áp dụng static sẽ trở thành tài sản chung cho tất cả các object của class
Trang 83 static và const | Truy xuất
Property
Method
Trong classNgoài class
Trang 93 static và const | const
- const chỉ được phép sử dụng trên property.
- Ảnh hưởng của const lên property:
+ Property đó không thể thay đổi giá trị và phải gán giá trị ngay khi định nghĩa
+ Nó cũng được mặc định là static
Cách truy xuất tương tự static
Trang 104 Kế thừa | Khai báo
Một class kế thừa từ class cha của nó sẽ có được đầy đủ tất cả các
property và method của class cha.
Tuy nhiên, được phép sử dụng thành viên đó hay không còn phụ thuộc vào phạm vi truy cập (sẽ nói sau)
Chú ý: PHP không hỗ trợ đa kế thừa
Trang 114 Kế thừa | Override
Mặc định trong PHP tất cả các method của class cha (mà class con có quyền truy cập) đều có thể ghi đè lại
(override)
Trang 124 Kế thừa | Truy xuất thành viên của class cha
Trang 134 Kế thừa | final
- final khi sử dụng lên class sẽ ngăn chặn class đó được kế thừa.
- final khi sử dụng lên method sẽ ngăn chặn class con override nó.
Trang 145 Phạm vi truy cập
- Phạm vi truy cập (visibility) được sử dụng trên propety và method.
- Nếu không được chỉ định thì visibility mặc định là public.
Trang 166 Phương thức khởi tạo và hủy | Constructor
Phương thức khởi tạo (constructor)
được gọi khi ta khởi tạo một instance
của class
Cấu trúc của constructor:
Chỉ được phép có một construct trong một class
Có thể bị override bởi class con (nếu không kèm theo final)
Trang 176 Phương thức khởi tạo và hủy | Destructor
Chỉ được phép có một destruct trong một class
Có thể bị override bởi class con (nếu không kèm theo final)
Phương thức hủy (destructor) được gọi
khi một instance của class bị hủy bộ
nhớ
Cấu trúc của destructor:
Trang 191 Abstract class | Mở đầu
Đôi lúc có một số class ta chỉ có thể biết được tên hành động, nhưng không thể biết được cụ thể chi tiết từng bước trong hoạt động đó diễn ra sao như sau, thì lúc này abstract class sẽ giúp ích cho chúng ta
Trang 201 Abstract class | Khai báo
Trang 211 Abstract class | Sử dụng
Class con sẽ kế thừa và bắt buộc phải triển khai hết tất cả các abstract method trong class cha
Trang 221 Abstract class | Chú ý
Abstract class không thể khởi tạo instance.Abstract class không hỗ trợ đa kế thừa
Trang 232 Interface | Mở đầu
PHP không cho phép đa kế thừa trên
abstract class để tránh diamond problem.
Do đó, Interface sinh ra để giải quyết vấn đề đa kế thừa trên abstract class bằng cách chỉ cho phép khai báo abstract method và const
property.
Trang 242 Interface | Khai báo
Tất cả các property trong interface mặc định phải là public và const Tất cả các method trong interface mặc định phải là public và
abstract.
Trang 252 Interface | Sử dụng
Trang 273 Trait | Mở đầu
PHP không cho phép đa kế thừa trên class để tránh diamond
problem.
Do đó, Trait sinh ra để giải quyết vấn đề đa kế thừa trên class bằng
việc không sử dụng kế thừa mà thay vào đó là sao chép toàn bộ code vào trong class
Trang 283 Trait | Khai báo
Trait không cho phép const property.
Trang 293 Trait | Sử dụng
Trang 303 Trait | Giải quyết xung đột
Trait cung cấp khả năng giải quyết xung đột các method bị trùng tên khi sử dụng nhiều trait
Trang 313 Trait | Remapping
Trang 324 So sánh
Cho phép Abstract class Interface Trait
Trang 334 So sánh
Cho phép Abstract class Interface Trait
Trang 344 So sánh
Cho phép Abstract class Interface Trait
Trang 36Magic method
Trang 37Danh sách các magic method
invoke() set_state() clone()
debugInfo()
Trang 414 toString() và clone ( )
toString được gọi khi object được chuyển đổi sang string
clone được gọi sau khi việc clone object hoàn thành
Trang 42THANK YOU