泛型类型

class Vehicle {
    test() {
        console.log("test:"
            this.constructor.name)
    }
}

class Car extends Vehicle { }

class Truck extends Vehicle { }

let list = new Array<Vehicle>()
let vehicle = new Vehicle()
let car = new Car()
let truck = new Truck()

list.push(vehicle)
list.push(car)
list.push(truck)

for (let curVehicle of list) {
    curVehicle.test()
}