动态语言
动态类型语言是指在运行期间才去做数据类型检查的语言。也就是说,在用动态类型的语言编程时,不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,将数据类型记录下来。如Python、Ruby等。
静态语言
静态类型语言是指在编译期间就会做数据类型检查的语言。也就是说在写程序时要声明所有变量的数据类型。如C/C++、C#、JAVA等。
编译型语言
编译型语言在程序运行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。如C/C++ 等。
解释型语言
解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。如Java,C#等。
虽然Java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码,在运行的时候,由JVM将字节码再翻译成机器语言。
脚本语言是一种解释性的语言,一般需要解释器才能运行。如JavaScript,ASP,PHP等。