Swift— 便利构造器 (extension)

* extension相当于OC中的分类, 特点和OC中的分类一样

* 不能定义存储属性

* 如果想给系统的类新增构造方法, 那么只能新增一个便利构造方法

* 如果构造方法是以init开头, 那么该构造方法就是一个指定构造方法

* 如果构造方法的init前面还有convenience, 那么这个构造方法就是一个便利构造方法

* 指定构造器和便利构造器区别:

* 指定构造器:

* 必须初始化当前类的所有属性

* 便利构造器:

* 不用初始化当前类的所有属性, 但是它依赖于当前类中的其它构造方法

* 必须在`便利构造方法`中调用`当前类`的其它`指定构造方法`

* 在开发中, 不要随便定义便利构造器, 只有当需要提供一个方法快速创建对象时, 或者在当前构造方法中没有办法初始化所有属性时, 才定义便利构造器

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容