以撸代码的形式学习Swift-21:扩展(Extensions)

人生        2019-08-18   来源:巧嘴美食说

为一个已有的类、结构体、枚举类型或者协议类型添加新功能。
包括在没有权限获取原始源代码的情况下扩展类型的能力(即逆向建模)
扩展可以为一个类型添加新的功能,但是不能重写已有的功能。

1 扩展的语法(Extension Syntax)

如果你通过扩展为一个已有类型添加新功能,那么新功能对该类型的所有已有实例都是可用的,即使它们是在这个扩展定义之前创建的。

2 计算型属性(Computed Properties)

扩展可以添加新的计算型属性,但是不可以添加存储型属性,也不可以为已有属性添加属性观察器。

3 构造器(Initializers)

4 方法(Methods)

可变实例方法(Mutating Instance Methods)

5 下标(Subscripts)

6 嵌套类型(Nested Types)



相关阅读