博客
关于我
029_siwft_两种单例模式
阅读量:375 次
发布时间:2019-03-04

本文共 787 字,大约阅读时间需要 2 分钟。

//单例模式 保证了只有一个实例的存在,这样有利于我们协调系统的整体行为,首先导入需要使用到的界面工具框架import UIKit//final 修饰符可以防止类被继承,还可以防止子类重写父类的属性、方法以及下标。该修饰符不能修饰结构体和枚举final class SigleClass:NSObject{    // 使用static 定义一个静态常量,静态常量在实例调用结束后不会消失,并且保留原值,即其内存空间不会释放,当下次调用实例时,仍然使用常量原有的值    static let shared = SigleClass()//    为了保持一个单例的唯一性。单例的构造器必须是private的,以防止其他对象也能创建出单例类的实例        private override init(){}        func say()  {        print("hello swift")    }                }SigleClass.shared.say()//使用静态变量的方式 实现第二个单例模式final class SecondStringletonClss: NSObject{    static var shared:SecondStringletonClss{        struct Static{            static let instance:SecondStringletonClss=SecondStringletonClss()        }        return Static.instance    }    private override init() {}        func say()  {        print("hello swift")    }}

 

转载地址:http://vtsr.baihongyu.com/

你可能感兴趣的文章
MySQL - 解读MySQL事务与锁机制
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
multi-angle cosine and sines
查看>>
Mysql Can't connect to MySQL server
查看>>
mysql case when 乱码_Mysql CASE WHEN 用法
查看>>
Multicast1
查看>>
MySQL Cluster 7.0.36 发布
查看>>
Multimodal Unsupervised Image-to-Image Translation多通道无监督图像翻译
查看>>
multipart/form-data与application/octet-stream的区别、application/x-www-form-urlencoded
查看>>
mysql cmake 报错,MySQL云服务器应用及cmake报错解决办法
查看>>
Multiple websites on single instance of IIS
查看>>
mysql CONCAT()函数拼接有NULL
查看>>
multiprocessing.Manager 嵌套共享对象不适用于队列
查看>>
multiprocessing.pool.map 和带有两个参数的函数
查看>>
MYSQL CONCAT函数
查看>>
multiprocessing.Pool:map_async 和 imap 有什么区别?
查看>>
MySQL Connector/Net 句柄泄露
查看>>