01/10/2018, 12:09
Hỏi về cách gọi phương thức trong class cha từ class con
Em chào các sư huynh
Em đang có chút thắc mắc về cách gọi 1 phương thức trong class cha từ class con, ví dụ như vầy:
class Animals {
public function speak(){
echo "Animals speak";
}
}
class Dog extends Animals {
public function dogSpeak() {
(1)
}
}
Trong chỗ (1), theo e biết có 2 cách gọi hàm speak ở lớp cha
- parent::speak();
- $this->speak();
Cả 2 cách này đều cho kết quả như nhau, vậy có điểm gì khác nhau giữa 2 cách gọi này không và e nên sử dụng mỗi cách trên khi nào v ạ?
Em cảm ơn nhiều =D
Bài liên quan
Khi bạn overide function
speak
, muốn dùng lại củaparent
thì sẽ dùng cách 1, PHP tự tìm những hàm gần với class hiện tại nhất rồi gọi, giả sử class được extends nhiều lớp, lớp gần nhất sẽ được gọi.PHP nhìn chung đơn giản hơn java/C#/C++ rất nhiều về cách bố trí OOP, chỉ đọc qua là biết đâu là overide, đâu là kế thừa,…