Java中的方法重载和方法重写是面向对象编程中的重要概念。下面将详细介绍这两种方法。
方法重载
方法重载指的是在同一个类中,存在多个方法名相同,但参数列表不同的方法。Java通过参数列表来区分重载的方法。
重载规则
- 方法名必须相同。
- 参数列表必须不同,包括参数的数量、类型或顺序。
- 返回类型可以相同,也可以不同。
示例
public class Calculator {
public int add(int a, int b) {
return a + b;
}
public double add(double a, double b) {
return a + b;
}
}
在上面的例子中,add
方法被重载了两次,一次接受两个整型参数,另一次接受两个双精度浮点型参数。
方法重写
方法重写发生在子类中,当子类有一个与父类方法签名相同的方法时,就发生了方法重写。
重写规则
- 方法名、参数列表和返回类型必须与父类中的方法完全相同。
- 子类方法不能抛出比父类方法更多的异常。
- 子类方法的访问权限不能比父类方法更严格。
示例
public class Animal {
public void makeSound() {
System.out.println("Animal makes a sound");
}
}
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Dog barks");
}
}
在上面的例子中,Dog
类重写了 Animal
类的 makeSound
方法。
扩展阅读
想了解更多关于Java的方法重载与重写?请访问我们的 Java教程。