几组不同类型语言的区别
编译型语言与解释型语言
编译型语言:执行必须通过编译器将源代码转换为机器码,其中需经历两个步骤:编译和链接。
编译:将源代码编译成机器码,只需编译一次,后面的执行无需编译。链接:将各个模块的机器码和依赖库串联起来生成可执行文件。解释型语言:无需编译,在运行过程中逐行翻译。二者的本质区别在于编译这一步骤。编译相当于将源程序看作一个整体,对其进行一次性翻译,之后这个源程序就可以脱离编译器和源代码重复运行。所以编译型语言执行速度快,程序占用内存较少。而解释型语言则具有更好的跨平台性。
动态类型语言与静态类型语言
动态类型语言:指运行时才进行数据类型检查的语言(注意与动态语言的区分!)
静态类型语言:指运行之前就已经确定数据类型的语言。(注意与静态语言的区别!)
强类型语言与弱类型语言
强类型语言:一种强制类型定义的语言。在这种语言当中,所有变量都必须先定义后使用,如果不进行强制转换,变量始终为初定义数据类型。
弱类型语言:一种数据类型可以被忽略的语言。在弱类型语言中,一个变量可以被赋予不同数据类型的值。