一、概念
Override,子类继承父类方法时,如果父类中的某一个方法不能满足子类的需求时,子类可以重新定义该方法的内容与功能来满足子类的需求,这便是方法重写。
二、语法规则
1.子类与父类要重写的方法名必须相同
2.方法的参数相同(数量、类型、顺序)
3.子类中的方法的访问级别不能低于父类中该方法 的访问级别(举例:父类方法的级别是protected,那么子类重写该方法,其级别必须是protected或者public,一定和父类的访问级别相同或者更宽,否则编译无法通过)
权限修饰符 : private < 默认(什么都不写) < protected < public
4.子类中方法抛出的异常范围 不能大于父类中方法抛出的异常的范围(子类可以不抛出异常也满足该原则,即是说父类抛出异常,子类不抛出异常,编译通过没问题。)
5.子类的返回值与父类的返回值要相同。
6.父类的私有方法和静态方法无法重写。
7.父类的非静态方法不能重写为静态方法。
三、@Override注解
表示一个方法的声明-----打算重写父类中的另一个方法声明。如果使用该注解修饰方法但是没有重写父类方法,则编译器会报错。