swift中创建一个单例
来源:互联网 发布:梦里花落知多少下载txt 编辑:程序博客网 时间:2024/05/29 18:21
在swift中创建单例,相比在Objective-C更加的便宜,首先创建一个继承自NSbject的MyINstance类,实现的代码如下:
//在swift中,类方法中是不允许定义静态变量的,所以定义一个静态变量,应该写在方法外面static var once_t: dispatch_once_t = 0static var instance: MyInstance?//用来获取单例对象的方法,class关键字相当于在Objective-C的类方法class func shareInstance() -> MyINstance { dispatch_once(&once_t){() -> Void in instance = MyInstance() } return instance!}
相比于以上的方法,在swift中还有一种更加简便的方法,这样写的理由是,在swift中,let关键字是线程安全的,用到的时候才会调用
static let instance: MyInstance = MyInstance()class func shareInstance() ->MyInstance { return instance}
需要注意的是,在创建instance对象的时候,是可选类型,然而在返回对象的时候,又必须要是有值的,所以要在return对象的时候,加上’!’
0 0
- swift中创建一个单例
- Swift中创建单例的方法
- swift创建单例
- OC->Swift Swift的单例创建
- swift和oc单例创建方式
- swift单例的创建与使用
- 怎样在swift中创建一个CocoaPods
- Swift中创建一个UIBarButtonItem的分类
- Swift 中实现单例方法
- 在 Swift 中实现单例方法
- Swift 创建一个tableview
- Swift创建一个按钮
- Swift创建一个UIImageView
- swift创建单例的三种方法
- 分别使用OC和Swift语法创建单例
- Swift-创建单例的三种方式
- iOS中创建单例
- 为RootViewController创建一个单例函数
- RANGE MINIUM/MAXIUM QUERY问题
- python 在windows下如何切换工作路径
- 设计模式系列:抽象工厂模式
- 排序算法之冒泡排序
- 设计模式系列:模板方法模式
- swift中创建一个单例
- 设计模式系列:建造者模式
- SQLiteOpenHelper基础使用
- FZU 2150 稍复杂的BFS的问题
- 设计模式系列:代理模式
- getServletConfig() 与getServletContext() 的区别
- 设计模式系列:原型模式
- 设计模式系列:中介者模式
- ListView的性能优化