首页 > 其他 > 详细

oc小总结

时间:2014-02-16 17:57:02      阅读:283      评论:0      收藏:0      [点我收藏+]

1、nil对象可以接受任何消息,但无响应;

2、NSString等的引用计数可认为无穷大;

3、要使用Copy、Mutablecopy要实现NSCopyding、NSMutablecCopying协议;

4、oc中,变量和方法能够同名,因为调用方式不同,能够区分;

5、@selector(print)属于SEL类型;

6、若两对象循环引用,那么不能同时retain,否则不能被释放;

7、atomic是原子性的,nonatomic是非原子性的,属性默认是非原子性的,原子性的不能多个线程同时运行,而非原子性的可以;

8、copy方法创建一个完全相同的新对象,二retain不创建新对象,只是将原来的对象引用计数加1;

9、引用计数为1的对象,不能autorelease两次或两次以上;

10、浅拷贝只拷贝源对象,而深拷贝会把原对象引用的对象也拷贝一份;

11、对于实例变量,public为公开类型,protected为受保护类型,private为私有类型;

12、copy和retain行的get方法和set方法;

bubuko.com,布布扣
。h:
#import <Foundation/Foundation.h>
#import "ClassTwo.h"

@interface ClassOne : NSObject

@property(nonatomic,assign) ClassTwo *Copy;
@property(nonatomic,assign) ClassTwo *Retain;

- (id)Copy;
- (void)setCopy:(ClassTwo *)c;

- (void)setRetain:(ClassTwo *)retain;
- (id)Retain;

@end

。m:

#import "ClassOne.h"

@implementation ClassOne
@synthesize  Copy=_Copy;
@synthesize Retain=_Retain;

- (id)Copy
{
    return _Copy;
}

- (void)setCopy:(ClassTwo *)c
{
    [_Copy release];
    
     _Copy=[c copy];
}

- (void)setRetain:(ClassTwo *)retain
{
    [_Retain release];
    _Retain=retain;
    [_Retain retain];
}


- (id)Retain
{
    return _Retain;
}




@end
bubuko.com,布布扣

oc小总结

原文:http://www.cnblogs.com/yueyuanyueyuan/p/3550952.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!