面向对象 重载是什么,详细解释并给出相应的案例代码
时间: 2024-09-09 10:03:10 浏览: 34
面向对象编程中的重载(Overloading)是指在同一类中定义两个或多个同名的方法,但这些方法的参数列表不同,即参数的数量、类型或顺序不同。这样可以根据传入的不同参数类型来决定调用哪个方法,这种选择是在编译时完成的,而不是运行时。
**详细解释:**
- **相同名称的方法**: 方法名相同,如`add()`。
- **不同的参数列表**: 每个方法可能有不同的参数类型、数量或顺序。
- **编译时确定**: 根据调用时传递的确切参数类型,Java会在编译阶段确定调用哪一个具体的方法。
**案例代码示例** (假设我们有一个数学类,用于加法操作):
```java
public class MathOperations {
// 第一个重载的add方法,接收两个int类型的参数
public int add(int a, int b) {
return a + b;
}
// 第二个重载的add方法,接收一个int和一个double类型的参数
public double add(int num1, double num2) {
return (double)num1 + num2;
}
}
```
在这个例子中,你可以这样调用:
```java
MathOperations math = new MathOperations();
System.out.println(math.add(5, 3)); // 调用第一个add方法,返回8
System.out.println(math.add(5, 3.5)); // 调用第二个add方法,返回8.5
```
阅读全文