1. 本节课将为你解析协议的使用方法。协议规定了用来实现某个功能所需要的方法和属性。协议能够被类、结构体等具体实现(或遵守)。
image
2. 协议定义了方法的蓝图,属性和其它适合特定任务或功能的要求。定义协议与定义类、结构和枚举非常相似。
image
3. 然后在两个大括号之间,填写协议的内容。这里声明了一个方法,它被视为协议定义的一部分,跟普通实例和类型方法完全一样,但是没有方法体。
image
image
5. 协议可以遵守另一个协议,将需要遵守的协议名称放在当前协议名称的后方,之间使用冒号进行分隔。
image
6. 接着定义了一个类,并使该类遵循两个协议,类名和协议名称之间仍然使用冒号进行分隔,而协议名称之间则使用逗号进行分隔。
image
7. 从错误提示可以看出,当前的类,需要实现协议中声明的三个方法。点击修复按钮,系统将自动补充需要遵守的方法。
image
image
image
image
image
image
image
14. 添加一个实例方法,并在控制台输出相应的日志。该方法并不是来自协议的方法。
image
image
image
17. 调用实例的协议方法,从第25行代码右侧的结果可以看出,该方法被正确调用。
image
18. 然后依次调用其它的方法,接着点击底部的显示调试区图标,打开控制台。
image
image
20. 对类进行扩展,同样可以实现类似的功能增强。继续对动物类进行扩展。
image
21. 然后添加一个浮点类型的扩展属性,当访问该属性时,返回特定的值。
image
22. 接着添加一个扩展方法,当调用该方法时,返回特定的值。
image
23. 初始化一个类的实例。然后点击右侧的显示结果图标,查看该实例对象的详细内容。
image
image
image
26. 最后调用类的扩展方法,以扩展的方式,实现了和协议类似的功能。
image
image
本文整理自:《Swift4互动教程》,真正的[手把手]教学模式,用最快的速度上手iOS开发和Swift语言,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1320746678,或扫描本页底部的二维码。课程配套素材下载地址:资料下载








网友评论