Any、NSObject、AnyObject的区别
- Any
- public typealias Any = protocal<>
- 是"零"个协议
- 任何类型都遵循这个协议
- 涵盖范围大
- AnyObject
- @objc public protocol AnyObject{}
- 一个具体协议,协议里面没有内容,默认情况下所有类都遵循这个协议
- NSObject
- open class NSObject:NSObjectProtocol
- 遵循了NSObjectProtocol协议的类
- 涵盖范围最小(NSObject类或其子类的实例对象)