011.Singleton 单例模式
来源:互联网 发布:今天eia数据公布 编辑:程序博客网 时间:2024/06/05 06:49
--------------- main.m ---------------
#import<Foundation/Foundation.h>
@interfaceFKSingleton : NSObject
+ (id) instance; // 此方法可获取该类的位移实例对象
@end
@implementationFKSingleton
staticid instance = nil;
+ (id) instance
staticid instance = nil;
+ (id) instance
{
if(!instance) //如果instance全局变量为nil
{
// 创建一个Singleton实例,并将该实例赋给instance全局变量
instance = [[superalloc] init];
}
return instance;
// 创建一个Singleton实例,并将该实例赋给instance全局变量
instance = [[superalloc] init];
}
return instance;
}
@end
intmain()
{
//判断两次获取的实例是否相等,程序将会返回1(代表真)
NSLog(@"%d", [FKSingleton instance] == [FKSingleton instance]);
{
//判断两次获取的实例是否相等,程序将会返回1(代表真)
NSLog(@"%d", [FKSingleton instance] == [FKSingleton instance]);
}
一、编写本节代码的具体步骤:
1.可仿照第二章001节的代码编写步骤,可以把类的接口文件,类的实现文件写在main.m文件中。
二、本节代码涉及到的知识点:
1.如果一个类只需要创建一个实例对象,(防止创建多个对象),那么我们可以使用static全局变量来实现。
2.如果一个类只能创建一个示例对象,那么这个类被称为“单例类”。
3.运行上面的代码,我们发现,两次产生的FKSingleton对象实际上是同一个对象。
0 0
- 011.Singleton 单例模式
- 011.Singleton 单例模式
- 单例(Singleton)模式
- singleton 单例模式
- Singleton单例模式
- Singleton(单例)模式
- Singleton 单例模式
- 单例模式(Singleton)
- 单例模式(Singleton)
- Singleton(单例)模式
- Singleton(单例)模式
- 单例模式(Singleton)
- 单例模式(Singleton)
- 单例模式Singleton
- Singleton (单例模式)
- Singleton单例模式
- 单例模式----SingleTon
- 单例模式-singleton
- 50个强大的Python模块
- LeetCode题解——Merge Sorted Array
- 杭电1860 统计字符
- LeetCode 7 Reverse Integer 这道题被血虐
- 获得一个数组的全排列
- 011.Singleton 单例模式
- 图像处理与计算机视觉基础,经典以及最近发展
- TCP/IP协议
- 在交叉编译器中出现 “no such file or directory”
- 00-自测4. Have Fun with Numbers (20)
- Python中choice用法与三元操作
- 并查集
- 012.private protect public 访问控制符
- 二叉树 二叉树的性质 存储结构 遍历二叉树 C实现二叉树的创建和遍历 线索二叉树