重载:
在同一个类中,当方法名相同,形参列表不同的时候 多个方法构成了重载。
重写:
在不同的类中,子类对父类提供的方法不满意的时候,要对父类的方法进行重写。
区别总结:
重点看:修饰符和返回值类型
重载:
与返回值类型和修饰符无关。
重写:
返回值类型:
1)如果是基本数据类型,那么两者必须有相同;
2)如果是引用数据类型,则必须要求父类的返回值类型大于子类。
如:下面这样的返回值类型是可以的(Student类继承自Person类)。
看eat()方法。
父类:
子类:
(注:父类返回值类型是子类返回值类型的父类 —— 则是可以的)
修饰符类型:
父类的权限修饰符要低于子类的。(如:父类private,子类public是可以的,反之则不行了)