Objective-C新的命名规则应用。Objective-C不包括命名空间机制,处理这个问题的方法是程序设计师必须为其类别名称加上前缀。由于前缀往往较短(相比命名空间),这时常引发冲突。2007年开始,在Cocoa编程环境中,所有Mac OS X类别和函式均有“NS”前缀(例如NSObject或NSButton)以清楚地标识它们属于Mac OS X核心。使用“NS”是由于这些类别的名称是在NeXTSTEP开发时定下的。

Objective-C独有个性。虽然Objective-C是C的严格超集,但它没有将C的基本类型视为第一级的对象,源)自(吹冰+文=论]文]网[www.chuibin.com。和C++不同,Objective-C不支持运算子多载(不支持ad-hoc多型)。与C++不同(但和Java相同),Objective-C只允许对象继承一个类别(不设多重继承)。Categories和Protocols可以提供很多多重继承的好处,而且没有什么缺点,例如额外执行时间过重和二进制不兼容。

由于Objective-C使用动态运行时类型,而且所有的方法都是函数调用(有时甚至系统调用也是如此),很多常见的编译时性能优化方法都不能应用于Objective-C(例如内联函数、常数传播、交互式优化、纯量取代与聚集等)。这使得Objective-C性能劣于类似的对象抽象语言(如C++)。不过Objective-C拥护者认为,既然Objective-C运行时消耗较大,Objective-C本来就不应该应用于C++或Java常见的底层抽象。

上一篇:华为网络产品英文文献和中文翻译
下一篇:J2EE开源技术应用英文文献和中文翻译

抗震性能的无粘结后张法...

锈蚀钢筋的力学性能英文文献和中文翻译

未加筋的低屈服点钢板剪...

园林植物景观的园林绿化...

推土机翻滚保护结构的性...

新型锚具的抓力性能英文文献和中文翻译

船舶设计中的消防安全性...

基于Joomla平台的计算机学院网站设计与开发

从政策角度谈黑龙江對俄...

浅论职工思想政治工作茬...

STC89C52单片机NRF24L01的无线病房呼叫系统设计

提高教育质量,构建大學生...

AES算法GPU协处理下分组加...

上海居民的社会参与研究

酵母菌发酵生产天然香料...

浅谈高校行政管理人员的...

压疮高危人群的标准化中...