父类下有多个子类,多个子类new后,父类构造函数都会先new

来源:1-1 课程导学

乔刻力

2022-03-15

父类下有多个子类,多个子类new后,父类构造函数都会先new
老师你好,这种情况下,如何只让父类只new一次
因为我把一些公用的内容都放到父类的构造函数中,
现在多个子类在new的时候 父类中初始化的属性会跟随子类new的数量重复赋值,请问怎么解决这个问题呢

写回答

1回答

keviny79

2022-03-16

  1. 首先任何子类对象创建,必然导致父类构造函数被调用,这一点无法改变,要不然就不是继承了。

  2. 如果你希望定义一个所有子类对象都共有的属性,可以在父类中定义一个静态方法和静态属性,然后赋值就可以了

0
2
keviny79
回复
乔刻力
那样不可以的,如果把父类写成单件模式,那么子类都无法继承了,因为单件模式的构造函数为私有的。 私有的构造函数不能在子类中用!
2022-03-27
共2条回复

晋级TypeScript高手,成为抢手的前端开发人才

轻松驾驭 TypeScript 高级用法, 突破前端成长瓶颈

871 学习 · 425 问题

查看课程