java项目中,一个类继承了另一个类,当调用子类方法时,会先调用父类方法吗
时间: 2024-11-25 11:16:34 浏览: 4
在Java中,如果一个子类继承自父类,并且子类中重写了父类的某个方法,那么当你通过父类引用调用该方法时,默认会优先调用子类的方法,这是多态性的一种体现,称为“动态绑定”或“后期绑定”。只有在明确指定`super`关键字调用父类方法的情况下,才会执行父类的方法。
例如:
```java
class Parent {
public void method() {
System.out.println("Parent's method");
}
}
class Child extends Parent {
@Override
public void method() {
System.out.println("Child's method");
}
}
// 使用Parent类型的引用调用method
Parent parent = new Child();
parent.method(); // 输出 "Child's method"
```
这里`parent.method()`会调用的是子类`Child`的`method()`方法,而不是父类`Parent`的版本。
阅读全文