Java语言是编译型仍是解释型?

Java语言是解释型语言?Java语言是编译型语言?学习

编译执行:经过编译器将源代码编译为机器码(机器能识别的代码指令),而后机器直接执行编译器

解释执行:指由解释器直接执行,不须要编译成机器语言编译

拿作饭来比喻,源代码就像食材:class

  • 解释执行像吃火锅,一边煮一边吃,煮菜的人至关于解释器的地位(源代码一边解释,一边执行)技术

  • 编译执行像炒菜吃,先把菜炒好再吃,炒菜的人至关于编译器的地位(源代码一次性编译,直接执行)语言

食材彻底能够作火锅吃,也能够作菜吃,不管怎么吃都只是吃的一种方式罢了di

一样的,不管解释执行仍是编译执行,其实只是源代码的一种执行方式而已文件

回到咱们的问题自己:时间

说Java是解释型语言,或编译型语言其实都是很荒谬的思考

  • 这就像说萝卜必须作火锅吃,不能炒菜吃同样

正确的说法是Java某种特定实现是解释型的或者是编译型的

  • 拿Java来讲,编译获得.class文件的步骤没法忽视,某些JVM内部实现也不是解释执行的,而是编译
  • C语言是不少人根深蒂固的编译型语言,但实际上C语言也有它的解释器实现

因此,所谓的编译型和解释型并非语言的特性,而是语言实现的特性

启示:

  • 不要固执于概念
  • 不少概念随着时间和技术的发展,会变得不适用
  • 学习技术要多思考,不要人云亦云
相关文章
相关标签/搜索