博客
关于我
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实战01|基础架构:一条SQL查询语句是如何执行的?
查看>>
Mysql实战之数据备份
查看>>
mysql实现成绩排名
查看>>
Mysql客户端中文乱码问题解决
查看>>
mysql客户端工具使用
查看>>
MySQL密码忘记,怎么办?
查看>>
mysql对同一张表进行查询和赋值更新
查看>>
mysql导入数据库出现:Incorrect string value: '\xE7\x82\xB9\xE9\x92\x9F' for column 'chinese' at row 1...
查看>>
mysql导入(ibd文件)
查看>>
Mysql工作笔记006---Mysql服务器磁盘爆满了_java.sql.SQLException: Error writing file ‘tmp/MYfXO41p‘
查看>>
mysql常用命令
查看>>
MySQL常用指令集
查看>>
MySQL底层概述—2.InnoDB磁盘结构
查看>>
MySQL底层概述—3.InnoDB线程模型
查看>>
MySQL底层概述—5.InnoDB参数优化
查看>>
MySQL底层概述—6.索引原理
查看>>
MySQL底层概述—7.优化原则及慢查询
查看>>
MySQL底层概述—8.JOIN排序索引优化
查看>>
MySQL底层概述—9.ACID与事务
查看>>
Mysql建立中英文全文索引(mysql5.7以上)
查看>>