Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 什么';“A”和“A”的区别是什么;引擎“;及;运行时;?_Java_Runtime_Platform - Fatal编程技术网

Java 什么';“A”和“A”的区别是什么;引擎“;及;运行时;?

Java 什么';“A”和“A”的区别是什么;引擎“;及;运行时;?,java,runtime,platform,Java,Runtime,Platform,我总是认为“引擎”是在运转的,因此需要启动和停止。但我也听说过“运行时”(“Java运行时环境”等)这个词,这似乎也暗示着某些东西正在运行 这些概念是相同的,还是不同的?如果是这样的话,它们有什么不同?什么标准使某个东西成为“引擎”和“运行时”?引擎是计算机程序的核心。从维基: 术语引擎(Engine)用于描述软件时,开发人员在与更广泛的门外汉受众交谈时经常使用,用于描述他们在其他情况下称为库、平台、SDK或对象的内容,以表示封装的功能块 运行时就是应用程序运行的时间。它的对应项是编译时。代码

我总是认为“引擎”是在运转的,因此需要启动和停止。但我也听说过“运行时”(“Java运行时环境”等)这个词,这似乎也暗示着某些东西正在运行


这些概念是相同的,还是不同的?如果是这样的话,它们有什么不同?什么标准使某个东西成为“引擎”和“运行时”?

引擎是计算机程序的核心。从维基:

术语引擎(Engine)用于描述软件时,开发人员在与更广泛的门外汉受众交谈时经常使用,用于描述他们在其他情况下称为库、平台、SDK或对象的内容,以表示封装的功能块

运行时就是应用程序运行的时间。它的对应项是编译时。代码被编写、分析、编译以在编译时运行。运行时只是描述CPU当前正在执行程序

还有其他时间,如链接时间加载时间,但在软件开发中并不经常使用


备注:术语引擎和运行时不在同一平面内。它们无法比较。引擎可能在运行时,也可能不在运行时,这取决于它是否执行

引擎通常指执行实际工作的软件组件。例如,数据库引擎从开发人员那里抽象出数据存储方式以及我们如何高效搜索的所有细节

Java虚拟机(JVM)是在物理计算机内部运行的虚拟计算机。虽然JVM肯定会做大量复杂的低级工作,但术语引擎通常指的是更高级的软件组件。我们几乎认为JRE是处理器。我们有一个运行字节码的虚拟CPU,而不是运行机器代码的物理CPU。
再次使用数据库示例:许多数据库是用Java编写的,因此在Java运行时环境中运行。因此,JRE正在运行一个数据库引擎来完成这项工作

引擎=包含逻辑的核心组件?结束此问题是垃圾。这是一个非常有效的问题,值得大量反馈。这直接取自NodeJS主页,清楚地表明“引擎”和“运行时”之间存在着明显的区别。。。。Node.js®是一个基于Chrome的V8 JavaScript引擎构建的JavaScript运行时。如果这不是一个有效的问题,那么这是怎么回事?:谢谢@darijan(+1)-一个后续问题:关于.NET的CLR(公共语言运行时)呢?还是OSGi的组件运行时?我认为“运行时”可能有两种定义:一种是你上面提到的,另一种是“运行时”的用法,它意味着某种引擎/平台。思想?再次感谢!CLR只是名称。它不是默认定义中的运行时。