Java——面向对象(5).重写

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37597439/article/details/81114511

方法的重写(override)
1)子类可以重写(覆盖)继承自父类的方法,即方法名相同,参数列表相同,方法体不同
2)重写的方法被调用时,看调用的类型(当子类对象重写方法被调用时(无论是子类的引用调用还是父类的引用调用),运行的是子类重写后的版本)
3)子类重写父类方法时,可以通过super关键字调用父类的版本

两同两小一大原则
1.两同:
1)方法名称相同
2)参数列表相同
2.两小:
1)子类方法的返回值类型小于或等于父类的
void时必须相同,基本类型必须相同
Java认为:父类大,子类小
2)子类方法抛出异常小于或等于父类的
3)一大:
1)子类方法的访问权限大于或等于父类的

重写与重载的区别
1)重写:重写是指在子类中定义和父类完全相同的方法,在程序运行时,根据对象的类型不同(而不是引用类型)而调用不同的版本。
重写遵循所谓“运行期绑定”,即在运行时根据引用变量指向的实际对象类型调用方法。
2)重载:重载是指在一个类中定义多 个方法名相同但参数列表不同的方法,在编译时,据据参数的个数和类型来决定绑定哪个方法。
重载遵循所谓的“编译期绑定”,即在编译时根据参数变量的类型判断应该调用哪个方法

猜你喜欢

转载自blog.csdn.net/qq_37597439/article/details/81114511