美文网首页
Swift4 中的单利

Swift4 中的单利

作者: Eddy_0 | 来源:发表于2018-04-17 17:44 被阅读76次

单利在开发中是一个很流行的设计模式,很多的开发者使用这一设计模式。这是非常简单、常见且易于使用在项目中。

它使用静态属性初始化类实例,是具有全局共享类实例

我们已经多次使用苹果的基础APIs,比如UserDefaults.standard,FileManager.default等类似的单例类模式。
1, 下面是一个使用类的简单示例:

class LocationManager{

    //MARK: - 请求获取位置
    func requestForLocation(){
        print("Location granted")
    }
 }

 //使用
 let location = LocationManager() //初始化
 location.requestForLocation()    //调用方法 requestForLocation()

这是一个没有使用单利模式的类,用于访问任何我们需要初始化类的函数,以避免我们使用静态实例的单利类。

2, 编写第一个单例类

class LocationManager {

    //静态实例

    static let shared = LocationManager()

    //测试变量

    var locationGranted: Bool?

    //私有化初始化方法

    private init(){}

    //MARK: - 请求获取位置

    func requestForLocation() {

        locationGranted = true

        print("获取位置")

    }

}

一行代码使用单利类方法
 LocationManager.shared.locationGranted()

[图片上传失败...(image-2764e1-1523958238623)]
每个类都有默认的公共初始化方法,它现在变成私有的。现在不能再在外部初始化你的单例类。

如何使用单例
//使用简单
 LocationManager.shared.requestForLocation() // 获取位置

 //使用变量值
 print(LocationManager.shared.locationGranted ?? false) // true

翻译自:Singleton Class in Swift

相关文章

  • Swift4 中的单利

    单利在开发中是一个很流行的设计模式,很多的开发者使用这一设计模式。这是非常简单、常见且易于使用在项目中。 它使用静...

  • swift4中字符串的新语法

    Swift3: swift4中直接操作字符串,无须通过characters: swift4中字符串也是一个集合了,...

  • Kotlin单例的五种写法

    前言 单利模式是写代码过程中不可避免用到的,下面我总结一下单利常用的五中写法 加载类时创建单利 Java实现 Ko...

  • 2019-06-10

    swift中单利的写法 懒加载

  • swift - webView实现大图浏览

    前言:刚学习swift4,发现很多有意思的东西。特此拿出和大家进行分享。今天主要看下swift4中wkwebVie...

  • iOS-OC和Swift单利创建

    OC单利 Swift单利 推荐使用 仿OC版 单利优缺点 优点: 缺点:

  • Swift访问控制权限

    概述 Swift 3中,新增了 fileprivate 和 open 权限,而在Swift4 中,对 filepr...

  • swift4 model.setValuesForKeys(di

    swift4中字典转BookDataModel可以使用model.setValuesForKeys(dic),mo...

  • 单例模式

    单利模式的核心结构中包含一个被称为单利的特殊类,通过单例模式可以保证系统中,应用该模式的 类只有一个实例对象。 1...

  • 单利设计模式(二)

    单利模式的问题 其实在之前就写了一篇关于单利设计模式中的懒汉式,也解决了懒汉式中存在的多线程安全问题,但是深入理解...

网友评论

      本文标题:Swift4 中的单利

      本文链接:https://www.haomeiwen.com/subject/oaspkftx.html