广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

Java中方法重载和方法覆盖的异同

作者:admin01发布时间:2021-07-25分类:Java技术浏览:867


导读:方法重载和方法覆盖的相同点都要求方法名相同;都可以用于抽象方法和非抽象方法之间。方法重载和方法覆盖的不同点方法覆盖要求参数签名必须一致,而方法重载则要求参数签名必须...

方法重载和方法覆盖的相同点

都要求方法名相同;

都可以用于抽象方法和非抽象方法之间。

方法重载和方法覆盖的不同点

方法覆盖要求参数签名必须一致,而方法重载则要求参数签名必须不一致;

方法覆盖要求返回类型必须一致,而方法重载对此不做限制;

方法覆盖只能用于子类覆盖父类的方法,方法重载用于同一个类的所有方法(包括从父类中继承来的方法);

方法覆盖对方法的访问权限和抛出的异常有特殊的要求,而方法重载在这方面没有任何限制;

父类的一个方法只能被子类覆盖一次,而一个方法在所在的类中可以被重载多次。

示例如下:

 public class Base {
   protected void method(int v) {} 
   private void method(String s) {}    //重载
 }
 public abstract class Sub extends Base {
   public void method(int v) {}      //覆盖
   public int method(int v1, int v2) {return 0;}    //重载
   protected void method(String s) throws Exception{}    //重载
   abstract void method();    //重载
 }


免责声明:本文文字及图片由小编转载自网络,版权所有权归原作者所有,如有侵权请及时联系我们进行删除。

以上是小编为大家带来的最新资讯,喜欢的朋友们可以继续关注本站最新动态,也可以咨询在线客服。


Java技术排行
标签列表
网站分类
文章归档
最近发表