多態確切的含義是:同一類的對象收到相同消息時,會得到不同的結果。而這個消息是不可預測的。多態,顧名思義,就是多種狀態,也就是多種結果。
多態性是一種通過多種狀態或階段描述相同對象的編程方式。它的真正意義在於:實際開發中,只要關心一個接口或基類的編程,而不必關心一個對象所屬於的具體類。
區別是否是多態的關鍵字在於看對象是否屬於同一類型。如果把它們看做同一種類型,調用相同的函數,返回了不同的結果,那么它就是多態,否則,不能稱為多態。
- 多態指同一類對象在運行時的具體化。
- PHP語言是弱類型的,實現多台更簡單、更靈活。
- 類型轉換不是多態。
- PHP中父類和子類看做‘繼父’和‘繼子’關系,它們存在繼承關系,但不存在血緣關系。因此子類無法向上轉型為父類,從而失去多態最典型的特征。
- 多態的本質就是 if …else,只不過實現的層級不同