所谓的编译型语言是指源文件必须得先编译成编译文件才能在目标机器上执行,如C、C++等,好处是性能好,因为在执行时少了编译这个步骤,但坏处是无法跨平台执行,因为编译文件和具体平台相关。
所谓的解释性语言是指源文件可以直接执行,边执行边编译,如python,ruby等,好处是可以跨平台,因为源文件和具体平台无关,而坏处是边编译对执行时性能有影响。
Java比较特殊,它也是得先编译才能执行,从这点上看,它应该属于编译型语言,但它并不直接编译成可执行文件,而是编译成和平台无关的字节码,执行时有JVM解释执行,所以从这点上看,它又属于解释性语言。
本文探讨了编译型语言和解释型语言的区别,解释了C/C++等编译型语言如何通过预先编译提高执行效率但牺牲了跨平台性,而Python/Ruby等解释型语言则能在多种平台上运行但可能影响执行时性能。特别地,Java作为一种介于两者之间的语言,通过编译为平台无关的字节码并在JVM上解释执行,实现了较好的平衡。
1404

被折叠的 条评论
为什么被折叠?



