《Object-C基础教程》-学习笔记2

第四章

4.2 继承

Object-C不支持多继承,而使用其他方式达到多继承的目的,例如category/protocol

4.3 继承的工作机制

跟C++一样,OC编译器使用“基地址+偏移量”的机制实现继承关系中的多态。

脆弱的基类问题(fragile base class problem):现在的编译器生成的程序中,这些偏移位置是通过硬编码实现的;如果希望向NSObject中添加其他变量,无法实现,因为这样会改变所有实例变量的偏移位置。在Leopard系统中引入新的64位OC运行时(使用间接寻址方式确定改变的位置)从而解决了这个问题。

该问题的分析

思考:C++和Java也存在该问题,怎么解决?

4.4 重写方法

调用超类的方法的语法:[super setFillColor: color];

第五章

5.1 复合

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容