派生到类的强制具有预定义签名的构造函数

时间:2015-09-27 16:23:34

标签: inheritance typescript1.5

在typescript中是否可以强制所有派生类具有带预定义签名的构造函数?

1 个答案:

答案 0 :(得分:3)

如果父类的构造函数需要一些参数,开发人员将被迫使用超级构造函数传递这些参数:

class Base {
    constructor(a : string, b : string) {
        // ...
    }
}

class Derived extends Base {
    constructor(a : string, b : string) {
        super(a,b); // Error if super is not invoked
    }
}

如果开发人员没有显式声明Derived类构造函数,则在创建实例时会出错:

enter image description here