-
[[Class alloc] init]其实是做了两件事,alloc和init是两个方法,class调用了两个方法。
11111.png 在上图中可以看到alloc是个类方法,init是个实例方法。alloc 给对象分配内存空间,init是对对象的初始化,包括设置成员变量初值这些工作。而给对象分配空间,除了alloc方法之外,还有另一个方法: allocWithZone.
使用alloc方法初始化一个类的实例的时候,默认是调用了allocWithZone的方法。alloc与allocWithZone的区别。 -
[class new]其实就是把alloc和init结合起来了
22222.png
从上图可以看到苹果对三个方法的解释都是use object initializers instead给对象分配空间
网友评论