Cocoa协议、基础类及字符串处理深度解析
1. 协议相关知识
在开发过程中,协议扮演着重要的角色。以 AppDelegate 类为例,它通过明确采用 UIApplicationDelegate 协议来表明自己的角色,能够接收诸如 application(_:didFinishLaunchingWithOptions:) 这样的消息。
有些初学者可能会尝试通过扩展协议并在协议扩展中实现委托方法,将方法注入到采用委托协议的类中,但这种方法行不通。因为Objective - C无法识别协议扩展,虽然可以在Swift中调用此类方法,但Cocoa不会调用,因为它不知道该方法实现的存在。
Cocoa协议有自己的文档页面。当 UIApplication 类文档表明委托属性的类型为 UIApplicationDelegate 时,实际上是在暗示,如果想知道 UIApplication 的委托可能会收到哪些消息,需要查看 UIApplicationDelegate 协议的文档。例如, application(_:didFinishLaunchingWithOptions:) 在 UIApplication 类文档页面中并未提及,而是在 UIApplicationDelegate 协议文档页面中有记录。
当一个类采用协议时,这种信息分离可能会让人困惑。当类的文档提到该类符合某个协议时
超级会员免费看
订阅专栏 解锁全文
74

被折叠的 条评论
为什么被折叠?



