swift构造器分为两种: designated & convenience
-
designated构造器必须调用直接父类的designated构造器
如果一个类的父类还有父类的话,只需要调用离当前class的直接父类的designated构造器就可以了
-
convenience构造器必须调用本类其他的构造器
注意: 这里没说调用什么类别的构造器,但是必须是本类的构造器
-
convenience构造器最终会调用一个designated构造器
注意: convenience仅仅是提供便利,最终还是会回到designated构造器上
理解