看板 PHP 關於我們 聯絡資訊
想問一下 學過JAVA 多型老師是這樣說的 母類別 Animal 子類別 Dog 如果寫 Animal aa = new Dog (); 這樣叫多型 可是PHP在new 時並沒有宣告 是子類別還母類別 如 $aa = new Dog(); 只有在function 裡傳遞參數時會寫出 如 public function putout(Animal $obj) { .... } 所以所以我覺得多型並不是大量使用.. 但在網路上查到很多PHP的多型都是指實作.. 除了 http://0rz.tw/WNuo7 敍述PHP沒有多型 到底上面的文章寫的對嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.114.1.218 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1466510698.A.396.html
storyn26383: 中文翻譯容易誤會,PHP 沒有 overloading,但是有 po 06/22 00:45
storyn26383: lymorphism 06/22 00:45
sunlights: 但是文章上他們是寫PHP的多型真的是多型嗎? 06/22 13:26
如下 Is what seems like polymorphism in PHP really polymorphism? 然後回答是 I should note that in PHP the polymorphism isn't quite the way it should be. I mean that it does work, but since we have a weak datatype, its not correct. 在PHP裡多型並不是多型應有的樣子..我是指它的確可以運作,但沒有明確的型態 這並不正確 ※ 編輯: sunlights (58.114.1.218), 06/22/2016 13:30:55
MOONRAKER: 阿就一個user在google上找到一段 誰講的也不知道 06/22 16:30
MOONRAKER: 這樣你就把他奉為聖經了? 06/22 16:31
MOONRAKER: 還有你知道stackoverflow的格式嗎?你看到那一塊是他的 06/22 16:31
MOONRAKER: 「提問」 別人的「回答」在下面 06/22 16:31
MOONRAKER: 底下人家給了一大堆答案 有code有實做 有聲有色 06/22 16:32
MOONRAKER: 然後你都不看 只看到說「他這樣問 所以應該是這樣」 06/22 16:32
MOONRAKER: 那根本不需要問嘛 你自己都想好了不是嗎 06/22 16:33
MOONRAKER: weak typing有他自己的規則 不要用java那套亂想 06/22 16:36
gname: 推樓上.. .不要把 JAVA 套進來... 06/23 15:33
kyleJ: OOP的術語翻成中文總是很令人混淆 但你說的那個不是 06/24 12:13
kyleJ: Override也不是Overload 是宣告父類別的變數可以參考到子 06/24 12:13
kyleJ: 類別 是強型別下才會出現的情況 PHP哪管你誰繼承了誰 用$ 06/24 12:13
kyleJ: 開頭的變數你愛裝什麼值或參考去哪個物件都可以 06/24 12:17
dlikeayu: 樓上最後一段說的不太正確,PHP開發者和framework開發者 06/28 22:10
dlikeayu: 現在都是為了效能瓶頸在往型別方面做強化優化 06/28 22:11
dlikeayu: 當然你可以按PHP7之前的作法,把這些型別判斷丟給php 06/28 22:12
dlikeayu: serve 去處理,但是在意機器成本的公司可能就不是這麼一 06/28 22:13
dlikeayu: 回事了 https://wiki.php.net/rfc/return_types 06/28 22:13
ej04cj86: interface & abstract class. 能用interface就別用abs 07/17 21:14
ej04cj86: 因為比較貴, 除非你的abstract class有init function 07/17 21:15