1.Extension
-
扩展 就是为一个已有的类、结构体、枚举类型或者协议类型添加新功能
-
语法:
extension SomeType { }
-
可以使用的功能:
-
添加计算行属性,计算类型属性
-
定义实例方法和类型方法
-
提供新的构造器
-
定义下标
-
定义和使用新的嵌套类型
-
使用已有类型符合某个协议。
计算型属性
-
为一个类增加计算属性
构造器
-
扩展能为类添加新的便利构造器,但是它们不能为类添加新的指定构造器或析构器。指定构造器和析构器必须总是由原始的类实现来提供
方法
-
扩展可以为已有类型添加新的实例方法和类型方法
-
使用: 3.repetitions({ print("Hello!")})
-
可变实例方法:
-
结构体和枚举中,修改self或其属性方法,必须加上mutating
下标
-
扩展可以为已有类型添加新下标。这个例子为 Swift 内建类型 Int 添加了一个整型下标。该下标 [n] 返回十进制数字从右向左数的第 n 个数字
嵌套类型
-
为Int添加了嵌套枚举,用来表示是正数,负数,0