当前位置: 技术问答>java相关
请问重载和覆盖的区别是什么?
来源: 互联网 发布时间:2015-08-24
本文导语: 看到书中写这样一句话不理解: "属性不能被重载只能被覆盖。" 重载是父类对子类而言的,那覆盖也是针对继承而言的话跟重载有何区别?谢谢。 | 对于方法来讲,重载是指方法的名相同,...
看到书中写这样一句话不理解:
"属性不能被重载只能被覆盖。"
重载是父类对子类而言的,那覆盖也是针对继承而言的话跟重载有何区别?谢谢。
"属性不能被重载只能被覆盖。"
重载是父类对子类而言的,那覆盖也是针对继承而言的话跟重载有何区别?谢谢。
|
对于方法来讲,重载是指方法的名相同,但参数不同,这与继承无关,同一个类中也可以实现方法的重载。而覆盖是指方法名相同,参数也相同,这是extends和implements中的概念。
而对于属性(成员变量)而言,是不能重载的,只能覆盖。
而对于属性(成员变量)而言,是不能重载的,只能覆盖。
|
我的理解是重载是同一类中的方法,方法名相同,参数不同。
而覆盖是子类对父类或类对接口方法的实现。
而覆盖是子类对父类或类对接口方法的实现。