ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java的重写(override)与重载(overload)

2022-01-06 17:32:59  阅读:168  来源: 互联网

标签:Override java 子类 overload 方法 重载 override 父类 重写


1 方法重写

1.1 方法重写的概念

子类继承了父类,子类就得到了父类的某个方法。但是子类觉得父类的这个方法不好用或者无法满足自己的需求。子类重写一个与父类申明一样的方法来覆盖父类的该方法,子类的这个方法就进行了方法重写。声明不变,重新实现

1.2 方法重写的校验注解:@Override

Java建议在重写的方法上面加上一个@Override注解,@Override优势:可读性好,安全,优雅!!

这个注解标记的方法,就说明这个方法必须是重写父类的方法,否则编译阶段报错。

1.3 方法重写的具体要求

  1. 子类重写方法的名称和形参列表必须与父类被重写方法一样
  2. 子类重写方法的返回值类型申明要么与父类一样,要么比父类方法返回值类型范围更小
  3. 子类重写方法的修饰符权限应该与父类被重写方法的修饰符权限相同或者更大
  4. 子类重写方法申明抛出的异常应该与父类被重写方法申明抛出的异常一样或者范围更小

1.4 方法重写的规范

  • 加上@Override注解。
  • 建议“申明不变,重新实现”

1.5 注意事项

  • 被重写后的方法是无法通过子类对象在外部调用的
  • 可以使用super.方法名()在子类的实例方法中调用父类被重写的方法
  • 静态方法和私有方法不能被重写

2 方法重载

2.1 方法重载的概念

重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。

最常用的地方就是构造器的重载

2.2 方法重载的具体要求

  • 被重载的方法必须改变参数列表(参数个数或类型不一样);
  • 被重载的方法可以改变返回类型;
  • 被重载的方法可以改变访问修饰符;
  • 被重载的方法可以声明新的或更广的检查异常;
  • 方法能够在同一个类中或者在一个子类中被重载。
  • 无法以返回值类型作为重载函数的区分标准。

标签:Override,java,子类,overload,方法,重载,override,父类,重写
来源: https://www.cnblogs.com/wanzizhadan/p/15772087.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有