java中,子类继承父类之后,覆盖了原有方法,那么调用新的方法的时候,二者都调用吗?

2025-05-21 18:33:25
推荐回答(2个)
回答1:

把Bus类定义到Vehicle类外面,这样运行就对了。
class Car extends Vehicle {
public Car() {
System.out.println("A new Car.");
}
public void drive() {
System.out.println("Car is driven");
}
public static void brake() {
System.out.println("Car is braked");
}
}
class Bus extends Vehicle {
public Bus() {
System.out.println("A new Bus.");
}
public void drive() {
System.out.println("Bus is driven");
}
}
class Vehicle {
public Vehicle() {
System.out.println("A new Vehicle.");
}

public void drive() {
System.out.println("Vehicle is driven");
}

public static void brake() {
System.out.println("Vehicle is braked");}
}
class Test{
public static void main(String[] args){
Vehicle vc = new Car();
Bus vb = new Bus();

}
}

回答2:

构造方法和普通方法不一样,构造方法在创建对象时候调用,而子类的构造方法中会自动调用父类的构造方法。