1. 所谓类的指定构造函数就是一般的构造函数,使用init来定义。
2. 便利构造函数(conveninence)
使用convinence关键字在init之前,创建的构造函数称为便利构造函数。
3.规则
1)指定构造函数必须调用其直接分类的指定构造函数;
即:在创建子类指定构造函数时,其中必须包括对直接父类指定构造函数的调用——supen.init(参数列表)
2)便利构造函数必须调用一类中定义的其他构造函数。
3)便利构造函数必须最终调用一个指定构造函数结束。
解释:指定构造函数必须包含对上面的(父类指定构造函数)调用:向上调用;便利构造函数必须总是横向调用(只能调用当前所在类中的其他构造函数)
如果便利构造函数本身没有调用指定构造函数,而是调用了其他的便利构造函数,那该便利构造函数必须以指定构造函数结束。