记录自己的学习理解,有不对,不足的地方希望前辈补充。
***(一)重写语法规则 :子类在继承了父类的某个方法之后,如果想要重写这个方法,则需要创建一个与父类方法的返回类型一样,名字一样,参数个数一样的方法,且访问权限大于等于父类的方法。这样子类中定义的方法就是方法重写(理解为对父类继承而来方法进行改造,具体改造成什么样看个人项目需求。)。子类中方法重写后,子类对象调用的则是重写后的方法,父类的方法也被隐藏,如果子类想要调用父类的那个方法则需要使用super。
**注意:**在JDK1.5之后,如果一个子类F在重写从父类继承而来的一个方法时。如果父类A的这个方法的返回“类型”,它有“子类”。那么子类F在重写这个方法的时候,可以使用父类A这个方法的返回类型的"子类"。
如:
1.people 父类:
`
2.people 类的子类——chinese子类:
3.声明一个Greatpeople 父类;
4.则在GreatPeople的子类GreatChinese重写从父类的 greatPeople方法时。可以使用其父类该方法放回类型的子类。
5.调试及实验结果:
(二).重写访问权限问题:子类重写父类某个方法时,子类重写的方法的访问权限不能低于父类这个方法的访问权限。如: