1 changed files with 47 additions and 0 deletions
@ -0,0 +1,47 @@ |
|||
// 抽象父类 Vehicle |
|||
abstract class Vehicle { |
|||
// 抽象方法 run(),没有方法体,强制子类实现 |
|||
public abstract void run(); |
|||
} |
|||
|
|||
// 子类 Car |
|||
class Car extends Vehicle { |
|||
@Override |
|||
public void run() { |
|||
System.out.println("小汽车在公路上飞驰 🚗"); |
|||
} |
|||
} |
|||
|
|||
// 子类 Bike |
|||
class Bike extends Vehicle { |
|||
@Override |
|||
public void run() { |
|||
System.out.println("自行车在非机动车道骑行 🚲"); |
|||
} |
|||
} |
|||
|
|||
// 子类 Truck |
|||
class Truck extends Vehicle { |
|||
@Override |
|||
public void run() { |
|||
System.out.println("卡车在货运道路运输 🚚"); |
|||
} |
|||
} |
|||
|
|||
// 测试类 |
|||
public class VehicleTest { |
|||
public static void main(String[] args) { |
|||
System.out.println("\n=== 进阶题测试 ==="); |
|||
// 1. 创建 Vehicle 数组,存放不同子类对象(多态数组) |
|||
Vehicle[] vehicles = { |
|||
new Car(), |
|||
new Bike(), |
|||
new Truck() |
|||
}; |
|||
|
|||
// 2. 遍历数组,统一调用 run() 方法,自动触发对应子类的实现 |
|||
for (Vehicle v : vehicles) { |
|||
v.run(); |
|||
} |
|||
} |
|||
} |
|||
Loading…
Reference in new issue