1. 重写方法的名称,形参列表必须与父类的一致
2. 子类重写父类方法时,返回值类型子类必须小于等于父类(java5 及更早版本返回类型要一样,java7 及更高版本可以不同)。
3. 子类重写父类方法时,访问权限子类必须大于等于父类(空<protected<public)
4. 建议:重写的方法尽量和父类保持一致
5.重写的方法能够抛出任何非强制异常,无论被重写的方法是否抛出异常。但是,重写的方法不能抛出新的强制性异常,或者比被重写方法声明的更广泛的强制性异常,反之则可以。
一下可以总结为:只有添加到虚方法表中的方法才能重写
构造方法不能被重写。
声明为 final 的方法不能被重写。
声明为 static 的方法不能被重写,但是能够被再次声明。
子类和父类在同一个包中,那么子类可以重写父类所有方法,除了声明为 private 和 final 的方法。
子类和父类不在同一个包中,那么子类只能够重写父类的声明为 public 和 protected 的非 final 方法。
如果不能继承一个方法,则不能重写这个方法。