委托相关设计(Delegation + Inheritance)
一、Composite

二、Prototype
创建未来会出现的子类。

每个子类的私有构造函数调用addPrototype函数,将子类本身挂到父类上。
再调用protected的带有参数的构造函数(为了跟上面的私有构造函数区分),用于返回一个子类实例。

创建未来会出现的子类。

每个子类的私有构造函数调用addPrototype函数,将子类本身挂到父类上。
再调用protected的带有参数的构造函数(为了跟上面的私有构造函数区分),用于返回一个子类实例。