A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© D调的沉默 中级黑马   /  2014-5-6 19:25  /  1761 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

alloc方法内部是调用allocZone方法吗?如果是,那么重写alloc方法,是否只要重写allocZone方法就可以了?

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

3 个回复

倒序浏览
alloc其实干的事就是开辟存储空间,根据要实例化的类的内部成员,计算出要开辟多少存储空间这么一个过程。
OC中的类继承自NSObject,我们自定义一个类的时候,并没有声明alloc方法,却可以完美调用,故而这个方法必须是NSObject内部的方法,被我们的类继承下来才正常使用的,至于怎么alloc的,可能就是框架里的C或者汇编语言去调用一系列处理器中跟硬件打交道的指令集了。

如果哥们你一定要重写的话,那估计就很牛逼了,兄弟坐等LZ好消息(这种框架方法真不用重写)
回复 使用道具 举报
OC中我们定义的类都继承与NSObject这个基类,而alloc方法是基类中的一个方法,要想在子类中重写父类的方法,理论上是可以实现,但是结果怎么样 ,你可以试一下
回复 使用道具 举报
单例模式确实必须要从重写alloc方法,确实是只需要重写重写allocZone方法就可以了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马