在子类中可以根据需要对从父类中继承来的方法进行改造,也称为方法的重置、覆盖。在程序执行时,子类的方法将覆盖父类中同名同参数列表的方法。
权限修饰符 返回值类型 方法名(形参列表) throws 异常类型{ 方法体; }
①子类重写的方法必须和父类被重写的方法具有相同的方法名称、参数列表。
②子类重写的方法使用的权限修饰符不小于父类被重写的方法的权限修饰符。
③子类不能重写父类中声明为private权限的方法,若子类中出现了与父类中同名同参列表的方法,不属于重写。
④父类被重写的方法的返回值类型是void,则子类重写的方法的返回值类型只能是void。父类被重写的方法的返回值类型是A类型,则子类重写的方法的返回值类型可以是A类或A类的子类。父类被重写的方法的返回值类型是基本数据类型(比如: double),则子类重写的方法的返回值类型必须是相同的double类型。
⑤子类重写的方法抛出的异常不大于父类被重写方法抛出的异常。
子类与父类中同名同参数的方法必须同时声明为非static的(即为重写),或者同时声明为static的(不是重写)。