我有这个TypeScript继承层次结构,Person是基础抽象类。 鉴于Man& class Woman是抽象Person类的后代。 抽象类Person有一个名为_children的属性,它是抽象Person对象的Array。 我需要在我的女人和男人课上添加一个孩子阵列。 但我想我不能添加Person对象的数组,因为它是抽象的。 相反,我需要添加后代对象Man&数组的女人。 你能告诉我这个结构的语法是什么吗? 所以我需要一个可以包含Man&女人的对象。
当我尝试这样做时:
private children: Person[] = [this.womanA, this.manB, this.womanD, this.manC];
private manD: Man = new Man(this.children, 'Lyngby');
我收到错误: 未捕获的ReferenceError:Person未定义在Object ../ src / app / _models / Man.ts
abstract class Person {
private _children: Person[];
constructor(children: Person[]) {
this._children = children;
}
}
export class Woman extends Person {
private _shoesize: number;
constructor(children: Person[], shoesize: number) {
super(children);
this._shoesize = shoesize;
}
}
export class Man extends Person {
private _favteam: string;
constructor(children: Person[], favteam: string) {
super(children);
this._favteam = favteam;
}
}