编译型和解释型、动态语言和静态语言,OC的语言类型(Objective-C)

动态和静态语言

  • 动态类型语言:在运行期进行类型检查的语言,也就是在编写代码的时候可以不指定变量的数据类型,比如Python和Ruby
  • 静态类型语言:它的数据类型是在编译期进行检查的,也就是说变量在使用前要声明变量的数据类型,这样的好处是把类型检查放在编译期,提前检查可能出现的类型错误,典型代表C/C++和Java

编译型和解释型

  • 编译型语言首先是将源代码编译生成机器指令,再由机器运行机器码(二进制)。
  • 解释型语言的源代码不是直接翻译成机器指令,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。

编译型相当于用中英文词典(翻译器)将一本英文书一次性翻译(编译)成一本中文书。以后查看直接就是中文了。可想而知,以后读书(运行)会非常非常方便。

而解释型相当于用中英文词典(翻译器)将一本英文书读一段翻译一段(解释)中文。以后查看时还是需要重新翻译。这样效率会低一些,必须依赖解释器,但是跨平台性好。

Objective-C

具有静态语言的特性(需要指定数据类型),又有动态语言的效率(runtime)

动态语言,静态语言,以及OC的语言类型
为什么说OC是动态语言

参考博客:
彻底明白编译型和解释型、动态语言和静态语言区别
静态语言和动态语言的区别

如何深入地理解动态语言和静态语言?
动态语言和静态语言的本质区别是什么?

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页