Swift单例
方式一 : 按OC 的写法
static var instance : SharedNet?
static var token : dispatch_once_t = 0
class func sharedNetTools() -> SharedNet{
dispatch_once(&token) { () -> Void in
instance = SharedNet()
}
return instance!
}
方式二: 简单高效的写法 在需要的时候创建
private static let instance = SharedNet()
class func sharedNetTools() ->SharedNet{
return instance
}
方式三: 创建时设置初始化参数
private static let instance: NetworkTools = {
// baseURL 要以 `/` 结尾
let urlString = "https://"
let baseURL = NSURL(string: urlString)!
let tools = NetworkTools(baseURL: baseURL)
// 设置相应的默认反序列化格式
tools.responseSerializer.acceptableContentTypes = NSSet(objects: "application/json", "text/json", "text/javascript", "text/plain") as! Set<String>
return tools
}()