JVM那些事儿(一)-----什么是JVM?

JAVA虚拟机(JVM)是啥?

  • Java虚拟机(英语:Java Virtual Machine,缩写为JVM),一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做。最早由太阳微系统所研发并实现第一个实现版本,是Java平台的一部分,能够运行以Java语言写作的软件程序。
    Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。通过对中央处理器(CPU)所执行的软件实作,实现能执行编译过的Java程序码(Applet与应用程序)。
    作为一种编程语言的虚拟机,实际上不只是专用于Java语言,只要生成的编译文件匹配JVM对载入编译文件格式要求,任何语言都可以由JVM编译运行。此外,除了甲骨文,也有其他开源
    由于JVM并不是专为Java所实现的运行时,实际上只要有其他编程语言的编译器能生成正确Java bytecode文件,则这个语言也能实现在JVM上运行。
    来源维基百科
  • JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
    Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。
    来自百度百科
  • Java虚拟机可以看作是一台抽象的计算机.如同真实的计算机那样,他有自己的指令集以及各种运行时内存区域.
    Java虚拟机与Java语言并没有必然的联系,他只与特定的二进制文件格式---Class文件格式所关联,Class文件中包含了Java虚拟机指令集(或者称为字节码,Bytecodes)和符号表,还有一些其他辅助信息.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这篇文章是我之前翻阅了不少的书籍以及从网络上收集的一些资料的整理,因此不免有一些不准确的地方,同时不同JDK版本的...
    高广超阅读 15,773评论 3 83
  • 前言 写这篇文章的目的: 总结所学的 JVM 知识 帮助想了解 JVM 的朋友,知无不言,言无不尽 本篇文章将会介...
    SavySoda阅读 5,016评论 11 105
  • 每个使用Java的开发者都知道Java字节码是在JRE中运行(JRE: Java 运行时环境)。JVM则是JRE中...
    燕京博士阅读 1,467评论 0 6
  • 拍照的时候象让相机有一些滤镜效果,通过GPUImage可以很容易的实现 前戏 1.这里需要一个第三方的开源框架,用...
    会飞的大马猴阅读 2,405评论 0 7
  • 卡梅尔的海一望无际,真是太大了!向远望去,远处的海与天已经结为了一体。 远处的海水波澜壮阔的,...
    奥斯卡上港阅读 379评论 0 0