最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Swift中定義單例的方法實(shí)例

 更新時(shí)間:2018年03月14日 09:48:26   作者:Mellong  
Swift中單例的寫法有很多種,下面這篇文章主要給大家介紹了關(guān)于Swift中定義單例的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。

什么是單例

單例模式是設(shè)計(jì)模式中最簡(jiǎn)單的一種,甚至有些模式大師都不稱其為模式,稱其為一種實(shí)現(xiàn)技巧,因?yàn)樵O(shè)計(jì)模式講究對(duì)象之間的關(guān)系的抽象,而單例模式只有自己一個(gè)對(duì)象。

單例模式(Singleton Pattern),也叫單子模式,是一種常用的軟件設(shè)計(jì)模式。 在應(yīng)用這個(gè)模式時(shí),單例對(duì)象的類必須保證只有一個(gè)實(shí)例存在。

單實(shí)例Singleton設(shè)計(jì)模式可能是被討論和使用的最廣泛的一個(gè)設(shè)計(jì)模式了,這可能也是面試中問(wèn)得最多的一個(gè)設(shè)計(jì)模式了。這個(gè)設(shè)計(jì)模式主要目的是想在整個(gè)系統(tǒng)中只能出現(xiàn)一個(gè)類的實(shí)例。這樣做當(dāng)然是有必然的,比如你的軟件的全局配置信息,或者是一個(gè)Factory,或是一個(gè)主控類,等等。

如何在 swift 中創(chuàng)建單例

在 swift 中有以下這兩種方式可以創(chuàng)建單例

全局變量的方式

let sharedNetworkManager = NetworkManager(baseURL: API.baseURL)
class NetworkManager {
 // MARK: - Properties
 let baseURL: URL
 // Initialization
 init(baseURL: URL) {
 self.baseURL = baseURL
 }
}

使用該全局變量進(jìn)行引用

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
 print(sharedNetworkManager)
 return true
}

靜態(tài)屬性及私有化構(gòu)造方法的方式

class NetworkManager {
 // MARK: - Properties
 private static var sharedNetworkManager: NetworkManager = {
 let networkManager = NetworkManager(baseURL: API.baseURL)
 // Configuration
 // ...
 return networkManager
 }()
 // MARK: -
 let baseURL: URL
 // Initialization
 private init(baseURL: URL) {
 self.baseURL = baseURL
 }
 // MARK: - Accessors
 class func shared() -> NetworkManager {
 return sharedNetworkManager
 }
}

直接調(diào)用類方法進(jìn)行引用

NetworkManager.shared()

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

參考自: What Is a Singleton and How To Create One In Swift

相關(guān)文章

  • 淺談Swift編程中switch與fallthrough語(yǔ)句的使用

    淺談Swift編程中switch與fallthrough語(yǔ)句的使用

    這篇文章主要介紹了Swift編程中switch與fallthrough語(yǔ)句的使用,用于基本的流程控制,需要的朋友可以參考下
    2015-11-11
  • 在Swift中使用Objective-C編寫類、繼承Objective-C類

    在Swift中使用Objective-C編寫類、繼承Objective-C類

    這篇文章主要介紹了在Swift中使用Objective-C編寫類、繼承Objective-C類等操作方法介紹,需要的朋友可以參考下
    2014-07-07
  • 純swift實(shí)現(xiàn)ipad版簡(jiǎn)單美團(tuán)界面功能

    純swift實(shí)現(xiàn)ipad版簡(jiǎn)單美團(tuán)界面功能

    這篇文章主要為大家詳細(xì)介紹了純swift實(shí)現(xiàn)ipad版簡(jiǎn)單美團(tuán)界面功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 深入理解Swift中單例模式的替換及Swift 3.0單例模式的實(shí)現(xiàn)

    深入理解Swift中單例模式的替換及Swift 3.0單例模式的實(shí)現(xiàn)

    這篇文章主要給大家介紹了關(guān)于Swift中單例模式替換的相關(guān)資料,然后又跟大家分享了關(guān)于Swift3.0 單例模式實(shí)現(xiàn)的幾種方法-Dispatch_Once的內(nèi)容,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-11-11
  • Swift實(shí)現(xiàn)表格視圖單元格單選(1)

    Swift實(shí)現(xiàn)表格視圖單元格單選(1)

    這篇文章主要為大家詳細(xì)介紹了Swift實(shí)現(xiàn)表格視圖單元格單選,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Swift運(yùn)算符使用方法淺析

    Swift運(yùn)算符使用方法淺析

    Swift 語(yǔ)言支持大部分標(biāo)準(zhǔn) C 語(yǔ)言的運(yùn)算符,并且改進(jìn)了許多特性來(lái)使我們的代碼更加規(guī)范,其中主要包含算數(shù)運(yùn)算符、區(qū)間運(yùn)算符、邏輯運(yùn)算符、關(guān)系運(yùn)算符、賦值運(yùn)算符、自增自減運(yùn)算符、溢出運(yùn)算符等
    2022-09-09
  • Swift教程之方法詳解

    Swift教程之方法詳解

    這篇文章主要介紹了Swift教程之方法詳解,方法是關(guān)聯(lián)到一個(gè)特定類型的函數(shù),類、結(jié)構(gòu)、枚舉所有可以定義實(shí)例方法,封裝特定任務(wù)和功能處理給定類型的一個(gè)實(shí)例,需要的朋友可以參考下
    2015-01-01
  • 詳解Swift 結(jié)構(gòu)體

    詳解Swift 結(jié)構(gòu)體

    這篇文章主要介紹了Swift 結(jié)構(gòu)體的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-09-09
  • Swift Json實(shí)例詳細(xì)解析

    Swift Json實(shí)例詳細(xì)解析

    這篇文章主要給大家介紹了關(guān)于Swift Json解析的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • Swift中static和class關(guān)鍵字的深入講解

    Swift中static和class關(guān)鍵字的深入講解

    這篇文章主要給大家介紹了關(guān)于Swift中static和class關(guān)鍵字的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03

最新評(píng)論

石阡县| 柳河县| 姚安县| 晋州市| 石狮市| 灌南县| 庄河市| 连云港市| 武城县| 沂南县| 阳谷县| 乾安县| 库伦旗| 革吉县| 贡觉县| 邹平县| 灵石县| 元阳县| 十堰市| 沧州市| 桐梓县| 连云港市| 阿勒泰市| 武强县| 武冈市| 藁城市| 乐山市| 拜泉县| 平武县| 永年县| 许昌县| 盐池县| 锡林浩特市| 光泽县| 湟中县| 乌拉特前旗| 昌平区| 东台市| 荆州市| 沾益县| 福州市|