作者 | fcamel (飛啊!起舞的小駱駝) | 看板 | P_fcamel |
標題 | [OOP] Oops, overload, override, overwrite |
時間 | Mon Mar 14 22:48:33 2005 |
我剛才才發現我把它們或多或少地用錯了...
http://software.ccidnet.com/pub/disp/Article?articleID=26089&columnID=294
重載/重置與Overload/Override
...
Overload的原意是"超載",指幾個方法的名字相同,但是方法的參數不同。本人理解其意
思可能就是一個名字承擔了太多的功能,就像 一個人要打幾份工伺候幾個老闆一樣,活
太多,有些超載了。所以,Overload應該對應"重載",而"重載"的"重"是"沈重"而不是"
重新"的意思。 有些書把Overload翻譯\xFAd"過載",值得讚揚。
Override的含義和Overwrite相同,其原意是"越過"、"跳過",即是某事情無效。它在
Java中,表示子類的方法覆蓋 了父類的同名方法。因此我猜測Override對應"重置",也
許是"重新安置"的縮寫?所以,"重置"的"重"應該是"重新"的"重",不是"沈重"的 "重"
,不要與"重載"混淆了。"重置"和"良基"的垃圾特徵相同,"重載"還勉強算個正常名詞。
唉!每次我講課,都要嚼半天舌頭來解釋這兩個中文"專業"術語。
|