重写:子父类出现了一模一样的方法(注意:返回值类型可以是子父类,这个我们学完面向对象讲)
方法重写的应用:
当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法。
这样,即沿袭了父类的功能,又定义了子类特有的内容。
注意事项:
* a:父类中私有方法不能被重写
因为父类私有方法子类根本就无法继承
* b:子类重写父类方法时,访问权限不能更低
* 最好就一致
* c:父类静态方法,子类也必须通过静态方法进行重写
* 其实这个算不上方法重写,但是现象确实如此,至于为什么算不上方法重写,多态中我会讲解(静态只能覆盖静态)
* 子类重写父类方法的时候,最好声明一模一样。
public class Test { public static void main(String[] args) { } } class Person { public void print() { System.out.println("Person"); } } class Student extends Person { public void print() { System.out.println("Student"); } } class Father { public Person method() { return new Person(); } } class Son extends Father { public Student method() { return new Student(); } }