8.2 扩展

8.2 扩展

开发者要记住,组合的方式总是比继承看起来更优雅,它使得代码的结构更像是插座和插头的关系,在需要的时候插上去,不需要的时候拔下,而不是永远地依附在上面。Swift提供了扩展这种方式,可以为类型添加新的功能,但不用继承它。扩展支持结构体、枚举和类,这些基本上就是Swift的类型总和了。扩展可以添加的功能也很多,比如计算属性、初始化方法、符合协议和嵌套类型等。本节主要介绍如何扩展已有类型,包括Swift提供的或者开发者自己定义的,让其在扩展时,代码看起来更像是以小组的形式存在,互相不干扰。