看板 Programming 關於我們 聯絡資訊
※ 引述《sorryChen (陳揚和)》之銘言: : 初學python 問了笨問題請多多包含 : 很多人覺得不用type checking python很好用 但我覺得挺危險的 : 而且應該不能有polymorphism.. 這樣類似的function作用在不同type的data : 時 就不能定義同名的function. 必須要在function中自己判別 : 然後寫 不同function 處裡不同type 的class.. : 這樣不是把type checking的責任交給programmer ... : 有前輩可以指引在python 中 正確的處理不同type類似function的方法嗎 : 或是應該看什麼文件 我想你大概搞錯了什麼叫 polymorphism 吧. 要因應不同的 type 去寫不同的處理這種做法 某程度就是有違 OOP 中的 polymorphism 的 思維了. 我猜你想說的只不過是 method overloading . 沒認真寫過 python 但 python 和 ruby 都是用所 謂 duck typing, 這種機制下, 應該能正常到做 method overloading 的效果吧 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82
godfat:overloading 是靜態的,ruby 確實沒有 220.128.121.85 08/20 15:22
adrianshum:其實 overloading 定義上應該不一定要 202.155.236.82 08/20 17:31
adrianshum:靜態吧? 可以 late binding 找到適合的 202.155.236.82 08/20 17:32
adrianshum:overloaded method 應該也算吧? 202.155.236.82 08/20 17:32
godfat:是可以,只是感覺就少掉很多 overloading 220.128.121.85 08/20 17:41
godfat:本身的好處。不知道有語言內建這樣的嗎? 220.128.121.85 08/20 17:41