java中的方法重載和方法重寫有很多區別。 下麵給出了方法重載和方法覆蓋之間的差異列表:
| 編號 | 方法重載 | 方法重寫 | 
|---|---|---|
| 1 | 方法重載用於提高程式的可讀性。 | 方法重寫用於提供已經由其超類提供的方法的特定實現。 | 
| 2 | 方法重載在類內執行。 | 方法重寫發生在具有IS-A(繼承)關係的兩個類中。 | 
| 3 | 在方法重載的情況下,參數必須不同。 | 在方法重寫的情況下,參數必須相同。 | 
| 4 | 方法重載是編譯時多態性的例子。 | 方法重寫/覆蓋是運行時多態性的例子。 | 
| 5 | 在java中,方法重載不能僅通過改變方法的返回類型來執行。方法重載中的返回類型可以相同或不同。 但是必須更改參數類型。 | 在方法重寫/覆蓋中返回類型必須相同或協變。 | 
Java方法重載示例
class OverloadingExample {
    static int add(int a, int b) {
        return a + b;
    }
    static int add(int a, int b, int c) {
        return a + b + c;
    }
}
Java方法覆蓋示例
class Animal {
    void eat() {
        System.out.println("eating...");
    }
}
class Dog extends Animal {
    void eat() {
        System.out.println("eating bread...");
    }
}
						上一篇:
								對象和類之間的區別
												下一篇:無
					
					