new 和 alloc/init 的区别
1、alloc分配内存的时候使用了zone。它是给对象分配内存的时候,把关联的对象分配到一个相邻的内存区域内,以便于调用时消耗很少的代价,提升了程序处理速度。但new和alloc/init在功能上几乎是一致的,分配内存并完成初始化。
2、采用new的方式只能采用默认的init方法完成初始化,[className new]基本等同于[[className alloc] init],采用alloc的方式可以用其他定制的初始化方法。
1、alloc分配内存的时候使用了zone。它是给对象分配内存的时候,把关联的对象分配到一个相邻的内存区域内,以便于调用时消耗很少的代价,提升了程序处理速度。但new和alloc/init在功能上几乎是一致的,分配内存并完成初始化。
2、采用new的方式只能采用默认的init方法完成初始化,[className new]基本等同于[[className alloc] init],采用alloc的方式可以用其他定制的初始化方法。
本文标题:iOS - new 和 alloc/init 的区别
本文链接:https://www.haomeiwen.com/subject/uabmdttx.html
网友评论