2010-10-09 58 views
0

在OOP PHP中,如果我有父類中定義的函數和子類中的修改版本,並且我從子類的實例化對象中調用它,它會使用子類的函數的版本?PHP OOP函數優先

我很確定它會,但我只是想仔細檢查一下,因爲我無法檢查正在運行的應用程序。

+1

是的,谷歌的「多態」或看到這個維基百科條目:http://en.wikipedia.org/wiki/Polymorphism_in_object-oriented_programming#PHP。 – chelmertz 2010-10-09 08:35:07

+1

哦,順便說一下,一旦一個函數屬於一個類,這個函數就被稱爲「方法」。 – chelmertz 2010-10-09 08:38:45

+0

哇回頭我不能相信我從來不知道這一點 - 現在對我來說是如此的第二天性。 – 2017-08-21 13:51:10

回答

5

是的,它絕對會。

如果您也想使用父級的版本,則必須在該子級的該函數覆蓋內調用parent :: the_func()。

如果您覆蓋子級中的構造函數,還必須調用父級構造函數。它不會自動調用。