在 Java 中,如果一个父类的引用指向了一个子类的对象,你可以通过这个引用来调用父类中的方法。
例如:
class Animal {
public void move() {
System.out.println("动物可以移动");
}
}
class Dog extends Animal {
public void move() {
System.out.println("狗可以跑和走");
}
public void bark() {
System.out.println("狗可以叫");
}
}
public class Test {
public static void main(String[] args) {
Animal a = new Dog();
a.move(); // 输出 "狗可以跑和走"
}
}
在这个例子中,我们创建了一个 Dog
类,它继承了 Animal
类,并重写了 move
方法。我们创建了一个 Dog
类的实例,并将它赋值给一个 Animal
类的引用。当我们调用 a.move()
时,Java 会去调用子类中重写的 move
方法,输出 "狗可以跑和走"。
注意:如果你想调用父类中没有被子类重写的方法,你可以使用 super
关键字来调用父类中的方法。例如,你可以在子类中使用 super.move()
来调用父类中的 move
方法。