Override:
重寫
發生在父類和子類之間,子類重寫父類的方法
方法的名稱、參數、返回值要一模一樣
Overload:
重載
發生在同一個類中
方法的名稱一樣,參數不同
Override相信大家經常使用,但是Overload不經常使用(或者說使用了也不知道斯Overload)
一個典型的Overload的例子就是構造方法,無參的構造方法和有參的構造方法,他們方法名一樣,只是參數名不一樣
Q:返回值不一樣的方法算不算Overload
A:不算!Overload的區分只看參數一樣不一樣(參數的個數,類型,順序)。如果你寫了兩個方法,只有返回值不同,其他的都一樣的話,編譯器會報錯。如果參數不同,返回值也不同的話,雖然也是Overload,不過一般不這樣寫,除非有特殊情況,Overload的返回值一般情況下是一樣的。