UI 18 单例

新建一个继承于NSObject的类, 名字为single
单例单例, 就是整个工程只创建这一个.
在.h中写一个+号方法, 一般都是share….

// 单例
+ (Singleton *)shareSinglenton;
+ (Singleton *)shareSinglenton{
//    // 第一种
//    static Singleton *single;
//    if (single == nil) {
//        single = [[Singleton alloc] init];
//    }

    // 第二种
    // 能保证当前对象只能被创建一次.
    static Singleton *single;

   static dispatch_once_t oneToKen;
    dispatch_once(&oneToKen, ^{

        single = [[Singleton alloc] init];
    });

    // 系统常见的单例
  //  [UIScreen mainScreen];
  //  [NSFileManager defaultManager];
  //  [NSUserDefaults standardUserDefaults];
  //  [NSBundle mainBundle];

    // 系统为了保证某些对象在工程中唯一,使用单例对象,比如上面四个.
    // 单例方法一般是+方法, 返回当前类型的对象.方法一般以一些关键词开头,比如,share,main,default,然后加上类名,基本上就是一个单例方法.
    return single;
}

你可能感兴趣的:(UI 18 单例)