首页 > 学院 > 开发设计 > 正文

单例

2019-11-14 19:06:56
字体:
来源:转载
供稿:网友
#import <Foundation/Foundation.h>@interface Student : NSObject@PRoperty(retain,nonatomic)NSString *name;@property(assign,nonatomic)int age;//设计单利模式//+(类名*)shareXXX//        defaultXXX//        xxx+(Student *)shareStudent;@end#import "Student.h"@implementation Student+(Student *)shareStudent{    //被static修饰的变量只会被初始化一次    static Student *stu=nil;    if (stu==nil) {        //如果学生对象为空,就初始化学生对象        stu=[[Student alloc]init];    }    return stu;    }@end#import <Foundation/Foundation.h>#import "Student.h"int main(int argc, const char * argv[]){    @autoreleasepool {                //调用单例方法        //通过调用单例方法,返回的为同一个对象        //Student *stu=[Student shareStudent];是单例模式的创建对象的方法     Student *stu=[Student shareStudent];     stu.name=@"xiaowang";             Student *stu2=[Student shareStudent];     NSLog(@"%@", stu2.name);                                }    return 0;}

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表