java中的方法重载和方法覆盖有很多区别。 下面列出了方法重载和方法覆盖的区别:

方法重载 方法覆盖
方法重载用于增加程序的可读性。 方法覆盖用于提供其超类已经提供的方法的具体实现。
方法重载在类内执行。 方法覆盖发生在具有 IS-A(继承)关系的两个类中。
在方法重载的情况下,参数必须不同。 在方法覆盖的情况下,参数必须相同。
方法重载是编译时多态的例子。 方法覆盖是运行时多态性的例子。
在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(" Animal eating...");}  
}  
class Dog extends Animal{  
    void eat(){System.out.println("Dog eating...");}  
}
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:java方法重载和方法覆盖的区别
本文链接:https://www.vsdiffer.com/vs/method-overloading-vs-method-overriding-in-java.html
免责声明:以上内容仅是站长个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。