从子类调用重写的父类方法,可以使用以下方法:
例如,假设有一个父类Animal和一个子类Dog,Animal类中有一个方法bark(),Dog类重写了这个方法。
class Animal {
void bark() {
System.out.println("Animal barks");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Dog barks");
}
}
在子类Dog中调用父类Animal的bark()方法,可以使用以下代码:
Dog dog = new Dog();
dog.bark(); // 输出 "Dog barks"
dog.super.bark(); // 输出 "Animal barks"
例如,假设有一个父类Animal和一个子类Dog,Animal类中有一个方法bark(),Dog类重写了这个方法。
class Animal {
void bark() {
System.out.println("Animal barks");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Dog barks");
}
}
在子类Dog中使用父类的引用调用父类的bark()方法,可以使用以下代码:
Dog dog = new Dog();
Animal animal = dog;
animal.bark(); // 输出 "Dog barks"
在这个例子中,虽然animal是Animal类型的引用,但它指向的是一个Dog对象,因此调用bark()方法时会调用Dog类的重写方法。
总之,从子类调用重写的父类方法,可以使用子类的引用调用父类的方法,或者使用super关键字调用父类的方法。
领取专属 10元无门槛券
手把手带您无忧上云