便宜VPS主机精选
提供服务器主机评测信息

JAVA中方法的重写与方法覆盖的区别

JAVA 中的方法重写与方法覆盖其实是同一个概念,都表示子类继承父类后对父类的方法进行重新定义。 这种重写是指子类对父类的方法进行重新定义,方法名、参数列表以及返回类型必须与父类方法一致。

重写除了父子类的方法名、参数列表和返回类型相同外,还有以下几个要点:

  1. 访问修饰符:子类重写的方法的访问修饰符可以与父类的方法相同或更宽松,但不能更严格。比如,如果父类的方法是 public,那么子类重写的方法可以是 public 或 protected,但不能是 private。
  2. 抛出的异常:子类重写的方法抛出的异常可以与父类的方法相同或更窄。也就是说,如果父类的方法声明了某些异常,子类的方法可以不抛出这些异常,或者只抛出这些异常的子类。
  3. 非私有方法:只有非私有方法可以被重写。

总结起来,重写就是子类对父类的方法进行重新定义,重写的方法必须与父类方法的方法名、参数列表和返回类型相同,可以修改访问修饰符和抛出的异常,非私有方法才能被重写。

未经允许不得转载:便宜VPS测评 » JAVA中方法的重写与方法覆盖的区别