一般重写的方法使用@Override
进行标识。
重写的方法必须确保方法名、参数完全一致,注意和之前介绍的重载区别开,并且返回值要一样,或者返回父类的子类型。
名称 | 范围 | 方法名 | 形参 | 返回类型 | 权限修饰符 |
---|---|---|---|---|---|
重载(Overload) | 本类 | 必须一样 | 类型、个数或者顺序可以不同,参数名无所谓 | ||
重写(Override) | 父子类 | 必须一样 | 必须相同 | 必须一样,或者子类的返回值是父类的返回值的子类 | 子类不能缩小父类的访问权限 |
重写的子类要求更小的返回值范围和更大的权限范围。