【正确答案】
C
【答案解析】 平台独立性指的是可以在一个平台上编写和编译程序,而在其他平台上运行。保证Java语言具有平台独立性的机制为“中间码”和“JVM”。Java程序被编译后不是生成能在硬件平台上可执行的代码,而是生成了一个中间代码。不同的硬件平台上会安装有不同的JVM,由JVM来负责把中间代码翻译成硬件平台能执行的代码。由此可以看出,JVM不具有平台独立性,与硬件平台是相关的,它保证了Java可以实现跨平台。
本题中,对于选项A,JRE是运行Java程序所必须的环境的集合,包含JVM标准实现以及Java核心类库。所以,选项A不正确。
对于选项B,JDK是Java语言开发的工具包,主要用于移动设备、嵌入式设备上的Java应用程序。包括javac、jar、javadoc、jdb、java、appletviewer、javah、Javap等基本组件。所以,选项B不正确。
对于选项C,JVM是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。它是Java语言跨平台的核心。所以,选项C正确。
对于选项D,OS全称为Operating System,指的是操作系统,与Java跨平台没有关系。所以,选项D不正确。