java中的一个抽象类,通过"父类引用指向子类对象"的方法,被实例化之后 5
java中的一个抽象类,通过"父类引用指向子类对象"的方法,被实例化之后。我调用这个抽象类的抽象方法。那么,我究竟是调用了被子类重写的那个方法呢,还是调用这个抽象类中那个...
java中的一个抽象类,通过"父类引用指向子类对象"的方法,被实例化之后。我调用这个抽象类的抽象方法。那么,我究竟是调用了被子类重写的那个方法呢,还是调用这个抽象类中那个没有被重写的抽象方法呢?
展开
1个回答
展开全部
父类的抽象方法是没有语句块的,所以你调用的其实是子类的抽象方法。父类是抽象类,子类继承必须重写父类的抽象方法。否则会报编译错误
//定义一个抽象的父类
public abstract class Fu {
//抽象方法
public abstract void eat();
}
//定义一个子类继承父类
public class Son extends Fu {
//重写父类的抽象方法
public void eat() {
System.out.println("我吃饭");
}
public static void main(String[] args) {
Fu fu = new Son();
fu.eat();
}
}
输出结果:
我吃饭
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询