重载和重写的规则
2016-08-03 17:27
344 查看
重写的规则
1、参数列表必须完全与被重写的方法相同,否则不能称其为重写而是重载。2、返回的类型必须一直与被重写的方法的返回类型相同,否则不能称其为重写而是重载。
3、访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private)
4、重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常。例如:
父类的一个方法申明了一个检查异常IOException,在重写这个方法是就不能抛出Exception,只能抛出IOException的子类异常,可以抛出非检查异常。
重载的规则
1、必须具有不同的参数列表;2、可以有不责骂的返回类型,只要参数列表不同就可以了;
3、可以有不同的访问修饰符;
4、可以抛出不同的异常;
两者的区别
重写多态性起作用,对调用被重载过的方法可以大大减少代码的输入量,同一个方法名只要往里面传递不同的参数就可以拥有不同的功能或返回值。用好重写和重载可以设计一个结构清晰而简洁的类,可以说重写和重载在编写代码过程中的作用非同一.
摘自: http://www.cnblogs.com/bluestorm/archive/2012/03/01/2376236.html.
相关文章推荐
- 继承中的重载,重写及相应隐藏规则
- 继承中的重载,重写及相应隐藏规则开启的时机
- Java重载重写与实现方法的规则
- Java 中重写与重载的规则、区别
- 重写与重载规则
- 重写和重载的方法的规则
- 关于重载与重写的规则问题
- 重写与重载规则
- Java中方法的重写(override)和重载(overload)的使用规则总结:
- 【翻译】Java方法的重载与重写规则
- 继承过程中重载VS重写---(重写规则)
- 1.为什么需要继承?如何继承?继承到什么? 2.方法的重载与重写的区别 3.类型的自动转换和强制转换 4.子类特有的方法的调用规则 5.子类重写的方法的调用规则 6.多态的理解 7.面向对象的三大特征
- 重载和重写的区别
- CI 即CodeIgniter框架在Nginx下的重写规则
- 重载和重写的区别
- C++的重写,重载,重定义
- 关于重载与重写
- 重载 与 重写
- 面向对象C++中重载、重写(覆盖)、隐藏的区别
- 重写、覆盖、重载、多态区别