首页 > 代码库 > 单例:用AFNetworking封装举例
单例:用AFNetworking封装举例
创建单例的方式
1 import AFNetworking2 3 class NetworkTools: AFHTTPSessionManager {4 5 //let是线程安全的6 //使用单例实例只需要拿到NetworkTools这个类取出来这个常量属性就可以拿到单例7 static let shareInstance: NetworkTools = NetworkTools()8 9 }
具体使用方式
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 //编译运行之后以下两个单例地址是一致的, 8 print(NetworkTools.shareInstance) 9 print(NetworkTools.shareInstance)10 }11 12 override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {13 //运行编译之后以下两个单例地址是不一致的,使用单例必须取到常量属性,直接使用Networking则是又创建了一个实例14 print(NetworkTools.shareInstance)15 print(NetworkTools())16 }17 }
单例主要分两种:
1.通过shareInstance拿到的永远是一个实例
2.不管怎样,拿到都永远是一个实例
单例:用AFNetworking封装举例
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。