在Java中,方法重写是指在子类中重新定义父类中已有的方法。当子类继承父类并且需要改变父类中的方法实现时,就可以使用方法重写。
语法
方法重写的语法如下:
-- -------------------- ---- ------- ------ ----- ------ - ------ ---- ------- - -------------------------- ----- --------- - - ------ ----- ----- ------- ------ - --------- ------ ---- ------- - ------------------------- ----- --------- - -
在子类中使用@Override
注解来标识该方法是重写父类中的方法。如果父类中没有被重写的方法,编译器会报错。
调用重写的方法
当一个对象被声明为父类类型,但实际上是子类对象时,调用重写的方法会执行子类中的方法实现。
public class Main { public static void main(String[] args) { Parent parent = new Child(); parent.print(); // 输出 Child class method } }
在上面的例子中,我们创建了一个Child对象并将其赋值给一个Parent类型的变量。当调用print()
方法时,会执行子类Child中的方法实现。
注意事项
- 重写的方法的访问修饰符不能比父类中被重写的方法的访问修饰符更严格。
- 重写的方法不能比父类中被重写的方法抛出更多的异常。
- 构造方法不能被重写。
通过方法重写,我们可以实现多态性,提高代码的灵活性和可维护性。在实际开发中,合理使用方法重写可以让代码更加清晰和易于理解。