Swift笔记

可选协议/协议拓展

MyProtocol 协议中func requiredMethod() 是在协议声明的时候定义的,但是MyProtocol 对其有一个默认实现,而func optionalMethod() 是在拓展中实现的,必须要有一个默认实现. 当TestClass 类被强转为 MyProtocol类型时,协议中声明的方法会被动态派发,但是协议拓展中的方法即使被重写仍然会调用默认实现.

Read More