摘要: 为什么说swift是面向协议编程 public protocol ReactiveCompatible { /// Extended type associatedtype CompatibleType /// Reactive extensions. static var rx: Reactive 阅读全文
posted @ 2019-03-08 19:39 zzfx 阅读(917) 评论(0) 推荐(0) 编辑
摘要: 一、术语:指定类型 typealias:用于给关联类型指定类型; 通过类型推断给关联类型指定类型太过烧脑; 二、类型指定 1、具体类型实现协议后,直接指定;作为普通的泛型类型使用,指定类型即可; 2、将协议实现为泛型构造器,关联类型通过泛型构造器的输入类型指定; 3、关联类型本身有协议约束;需要先构 阅读全文
posted @ 2019-03-08 19:38 zzfx 阅读(646) 评论(0) 推荐(0) 编辑
摘要: 关联类型的形式为类型的引用进而进行约束提供了条件; 同时能够简化语法形式。 Swift: Associated Types http://www.russbishop.net/swift-associated-types Associated Types Series Swift Associate 阅读全文
posted @ 2019-03-08 19:38 zzfx 阅读(770) 评论(0) 推荐(0) 编辑
摘要: 都需要协议实现者提供具体变量; 否则认为不符合协议。 @protocol edddd <NSObject> @property(nonatomic, strong) NSObject *egooo; @end Auto property synthesis will not synthesize p 阅读全文
posted @ 2019-03-08 19:16 zzfx 阅读(708) 评论(0) 推荐(0) 编辑
摘要: static与class 都有类型成员的含义;相对于实例成员; static的另一个意思是静态派发;所以不能被继承。 要使用动态派发和继承的机制必须使用class继承。 static的其它常见含义: 可见性;相当于private修饰符。 生命周期; 阅读全文
posted @ 2019-03-08 18:56 zzfx 阅读(531) 评论(0) 推荐(0) 编辑