Java—方法重写

一、方法重写

 方法重写的前提:要有继承关系

 定义:子类有一方法,方法名、形参列表、返回值都与父类的某一方法相同

二、调用原理

子类调用重写方法,应该按照就近原则

 子类的重写方法一般都有注解@Override

三、方法重载&方法重写的区别

 ① 二者的概念

 ② 重载和重写的具体规则

 ③ 重载:不表现为多态性。

   重写:表现为多态性。



重载,是指允许存在多个同名方法,而这些方法的参数不同。编译器根据方法不同的参数表,对同名方法的名称做修饰。对于编译器而言,这些同名方法就成了不同的方法。它们的调用地址在编译期就绑定了。Java的重载是可以包括父类和子类的,即子类可以重载父类的同名不同参数的方法。

所以:对于重载而言,在方法调用之前,编译器就已经确定了所要调用的方法,这称为“早绑定”“静态绑定”

而对于多态,只等到方法调用的那一刻,解释运行器才会确定所要调用的具体方法,这称为“晚绑定”“动态绑定”

引用一句Bruce Eckel的话:“不要犯傻,如果它不是晚绑定,它就不是多态。”

原文地址:https://www.cnblogs.com/nadou/p/13968681.html