方法重写
方法重写的引入
当父类的方法不能够满足子类的需求的时候,需要方法重写
方法重写的特点:
1.发生在具有子父类的两个类中
2.方法名相同
3.参数列表完全相同
4.返回值类型可以相同或者是其子类
5.访问权限修饰符不能够严于父类
访问权限修饰符的宽严关系
public > protected > default > private
6.抛出的异常不能够被扩大
注意事项:
1.private修饰的方法不能够被继承,所以不能够被重写
2.构造方法不能够被重写
3.子类重写父类的方法时,访问权限修饰符不能更低,严格
4.返回值类型相同或者是其子类
5.重载和重写的区别
OOA: 分析有多少个对象,有多少个对象就写多少个类,分析每个类的成员
OOD: 分析对象与对象之间的关系,继承关系
OOP: 在主方法尽量出现创建对象,调成员
举例代码如下所示:
/*
* 有农民(farmer),教师(teacher),科学家(scientist),服务生(attendant),
* 其中农民,服务生只有基本工资,教师除基本工资外,还有课酬(元/天),
* 科学家除基本工资外,还有年终奖,请你写出相关类,将各种类型的员工的全年工资打印出来。
*
* OOA: 分析有多少个对象,有多少个对象就设计多少个类
* OOD: 类与类的关系
* OOP: 在main方法中不断地创建对象,调用对象的成员
*/
public class OverrideDemo03 {
public static void main(String[] args) {
Farmer f = new Farmer(4500.0);
Teacher t = new Teacher(6000.0, 60);
Scientist s = new Scientist(8000.0, 100000.0);
Attendant a = new Attendant(2400.0);
f.printAllYearSalary(