答: init中调用super的init方法来初始化自己所包含有的父类信息1.内存分配 内存应该在[Class alloc]的时候就已经分配了,大小和类型应该由对应的Class来决定。而init方法只是进行对象内部各种变量的初始化,同时将retain count加一,表示目前这块内存空间有人在...
分类:
其他好文 时间:
2014-08-21 11:21:44
阅读次数:
167
#import @interface Father : NSObject @property (nonatomic,copy) NSString *name;@property (nonatomic,retain) NSNumber *age;-(id) initWithName:(NSString...
分类:
移动开发 时间:
2014-08-19 00:57:13
阅读次数:
316
如果将synthesize省略,并且我们自己实现setter和getter方法时,系统就不会生成对应的setter和getter方法,还有实例变量
1,当把语义特性声明为assign时,setter和getter时方法内部实现
- (void)setName:(NSString *)name{
_name = name;
}
- (NSString *)na...
分类:
其他好文 时间:
2014-08-18 23:37:33
阅读次数:
318
- (void)setName:(NSString *)name
{
判断原有对象和新对象是否是同一个对象,如果是同一个,就没有必要再重新赋值,否则会先release 再retain,就会变成野指针
if (_name !=
name) {
释放保有之前对象的所有权
[_name rele...
分类:
其他好文 时间:
2014-08-18 23:37:03
阅读次数:
257
美丽说面试题1,IOS是怎样进行内存管理的,什么是ARC。2,声明Property时,assign,nonatomic,readonly,retain,copy(各什么意思,括号里没打印出来,我猜得)3,delegate需要retain吗?4,什么是designated initlalizer?执行...
分类:
移动开发 时间:
2014-08-18 20:23:32
阅读次数:
345
#import @interface Person : NSObject@property(nonatomic,copy) NSString *name;@property(nonatomic,retain) NSNumber *age;-(void) setNewName:(NSString *)...
分类:
移动开发 时间:
2014-08-18 01:30:33
阅读次数:
230
@interface Person : NSObject//retian : release 旧值,retain 新值@property(nonatomic,retain) Book *book;//copy:release旧值,copy 新值@property(nonatomic,retain) ...
分类:
其他好文 时间:
2014-08-16 16:20:50
阅读次数:
206
1 @property (retain, nonatomic) NSString *retainStr; 2 @property (copy, nonatomic) NSString *copyStr; 3 4 5 6 @property (retain, nonatomi...
分类:
移动开发 时间:
2014-08-16 09:40:20
阅读次数:
172
如果将synthesize省略,并且我们自己实现setter和getter方法时,系统就不会生成对应的setter和getter方法,还有实例变量
1,当把语义特性声明为assign时,setter和getter时方法内部实现
- (void)setName:(NSString *)name{
_name = name;
}
- (NSString *)name{
...
分类:
其他好文 时间:
2014-08-15 23:51:39
阅读次数:
489
iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存。但是学习还是很有必要的。在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都很熟悉了,在此我也不介绍,网上有很多相关文章。现在我们看看iOS5中新的关键字strong, weak...
分类:
移动开发 时间:
2014-08-15 12:44:40
阅读次数:
195