java中重写(Override)与重载(Overload)的区别
Java中重写和重载是多态性的不同提现,是Java面向对象程序语言设计中三大特性之一,熟练掌握多态性的概念,对Java设计理念和核心思想就有更深的理解,下面就来看看重写(Override)与重载(Overload)的区别。
重写(Override)
重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。
重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。
重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。
重载(Overload)
重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同;注:不能根据返回值类型来判断方法是否重载
每个重载的方法或者构造函数都必须保证参数类型和个数不相同;
java中重写(Override)与重载(Overload)的区别
区别点 | 重写 | 重载 |
---|---|---|
英文 | Overriding | Overloading |
定义 | 1.方法名称,参数类型,返回值类型都相同;2.被重写的方法不能拥有更严格的权限 | 1.方法名相同,参数的类型和个数不相同;2.对权限没有要求 |
范围 | 发生在继承类中 | 发生在一个类中 |
文章标签: