objc 全局

TestObj.h
/**********************/

#import <Foundation/Foundation.h>

@interface TestObj : NSObject

@property(nonatomic, retain)NSString *str;

+(TestObj*)shareObj;


@end


TestObj.m
/**********************/


#import "TestObj.h"

@implementation TestObj
@synthesize str;

static TestObj *shareobj = nil;
+(TestObj*)shareObj
{
    @synchronized(self)
    {
        if(shareobj == nil)
        {
            shareobj = [super allocWithZone:NULL];
        }
    }
    return  shareobj;
}

@end


/*************************
实现。比如给某个变量传值 
*************************/

TestObj * a = [[TestObj alloc]init];
    TestObj *b = [TestObj shareObj];
     
    b.str = @"language objective-c ";



/************************
在别的地方就可以直接调用了
*************************/
TestObj *b = [TestObj shareObj];
    NSLog(@"%@",b.str);


/***********************************************************/
/************************
也可以用另外一种方法
*************************/

AppDelegate *app = [[UIApplication sharedApplication]delegate];

....
原文地址:https://www.cnblogs.com/qingjoin/p/3049068.html