面试高频考点:重写和重载的区别
Posted 小布丁value
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试高频考点:重写和重载的区别相关的知识,希望对你有一定的参考价值。
重写和重载的区别
定义:重载和重写都是实现多态的方式,
区别:重载:编译时多态
重写:运行时多态
一,重写的特点:
1.发生在父类与子类之间
2.方法名相同,参数列表相同
3.子类访问限定符 >= 父类访问限定符
(public>protected>default>private)
4.重写方法一定不能抛出新的检查异常或者比被重写方法更宽泛的异常
二,重载的特点
1.同一个类中
2.方法名相同参数列表不同
注意无论重载还是重写都不以返回类型作为判断标准
重写
public class Father {
public static void main(String[] args) {
Father s =new Sons();
s.sayHello();
}
public void sayHello(){
System.out.println("hell0,Father");
}
}
class Sons extends Father{
@Override
public void sayHello() {
System.out.println("hello,son");
}
}
重载
public class Father {
public static void main(String[] args) {
Father s =new Father();
s.sayHello();
s.sayHello("重载");
}
public void sayHello(){
System.out.println("hell0,Father");
}
public void sayHello(String name){
System.out.println("hell0 "+name);
}
}
hell0,Father
hell0 重载
以上是关于面试高频考点:重写和重载的区别的主要内容,如果未能解决你的问题,请参考以下文章
面试常问的重写(Override)和重载(Overload),你都懂了吗?