一丶
1.方法覆盖又被称为方法重写,英语单词【overide】
2.什么时候使用方法重写?
当父类中的方法已经无法满足当前子类所需的业务要求。
子类有必要将父亲继承过来的方法进行重写。
这个重写的过程被称为方法覆盖或者方法重写。
3.什么条件满足之后会发生方法重写呢?【代码满足什么条件之后就会构成方法覆盖呢?】
方法重写发生在具有继承关系的父子类之间
方法重写的时候:返回类型相同,方法名相同,形参列表相同。
方法重写的时候,访问权限不能更低,但可以更高。
4.注意:
私有方法不能继承,所以不能覆盖。
构造方法不能继承,所以不能覆盖。
静态方法不存在覆盖。
覆盖只针对方法,不谈属性。
二丶
- 什么时候我们会考虑使用方法覆盖呢?(override)
子类继承父类的时候,父类的方法已经无法满足当前子类对业务的需求,子类有权利对这个方法进行重新编写,也叫做”方法覆盖“”。
2.回顾一下方法重载!!
什么时候考虑使用方法重载(overload)?
当在一个类当中,功能相似的话,建议将名字定义成一样的,这样代码美观,而且方便编程。
什么时候条件满足的时候可以构成方法重载?
条件一:在同一个类名当中。
条件二:方法名相同
条件三:参数列表不同(个数,顺序,类型)
三丶
例子:
方法覆盖的使用代码,接下来是运行的结果。
重要结论:当子类对父类继承过来的方法进行“方法覆盖”之后,子类对象调用该方法的时候,一定执行覆盖之后的方法。
当我们代码怎么编写之后,代码级别上构成了方法覆盖?
条件一:两个类之间必须要有继承关系。
条件二:重写之后的方法和之前的方法
1.相同的返回值类型
2.相同的方法名
3.相同的形参列表
条件三:访问权限可以更高,但不可以更低。
一个关于方法覆盖的例子:
public class Person {