- 博客(4)
- 收藏
- 关注
转载 @protocol和category 中如何使用@property (协议和分类中如何使用@property属性)
在协议@protocol中使用@property只会生成setter和getter方法声明,我们使用属性的目的就是希望遵守我们协议的对象能够实现该属性;在分类category中使用@property 也是只会生成setter 和getter 方法声明,如果真需要个category增加属性的实现,需要借助于两个运行时的函数 //objc_setAssociatedObjec
2016-07-27 13:39:50 2326 1
转载 @property的本质是什么?ivar、getter、setter是如何生成并添加到这个类中的
1.@property的本质是什么@property的本质 = ivar (实例变量) + getter (取方法) + setter (存方法)“属性”(property)有两大概念:实例变量(ivar)、存取方法(getter + setter) 2、ivar、 getter 、setter 是如何生成并添加到这个类中的这是编译器自动合成的,通过@synthesize 关键字指
2016-07-27 13:27:01 2667
转载 用@property声明的NSString(或NSArray,NSDictionary)经常使用copy关键字,为什么?如果改用strong关键字,可能造成什么问题?
1、因为父类指针可以指向子类对象,使用copy的目的是为了让本对象的属性不受外界影响,使用copy无论给我传入是一个可变对象还是不可对象,我本身持有的就是一个不可变的副本.2、如果我们使用是strong,那么这个属性就有可能指向一个可变对象,如果这个可变对象在外部被修改了,那么会影响该属性.copy此特质所表达的所属关系与strong类似。然而设置方法并不保留新值,而是将其“拷
2016-07-27 12:56:14 2432
原创 @property面试整理
1.这个写法会出什么问题:@property(copy)NSMutableArray *array? 参考答案: 首先是没有指明为nonatomic,因此就是atomic 原子操作,会影响性能。该属性使用了同步锁,会在创建时生成一些额外的代码用于帮助编写多线程程序,这会带来性能问题,通过声明nonatomic 可以节省这些虽然很小但是不必要的额外开销。在我们的应用程序中,几乎都是使用
2016-07-27 12:28:19 341
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人