zoukankan      html  css  js  c++  java
  • 关于Java虚拟机JVM的简单了解

    JVM主要功能

    Java是一种高级编程语言。 
    用高级语言编写的程序不能直接在任何机器上运行。 
    首先,需要将其翻译成特定的机器语言,javac编译器就专门来干这个事儿的,它把Java程序(含有的.java源代码文件)转换成机器代码(称为字节码或.class文件)。

    Java虚拟机(JVM)是安装在我们计算机中的虚拟机,JVM自己的机器语言是字节码。 
    这样子Javac编译器就好处理啦,因为它只需要为JVM生成字节码就行了,而不是为每种类型的机器生成不同的机器代码。

    JVM执行Javac编译器生成的字节码并生成输出就OK了。JVM正是java跨平台的原因。 
    所以,现在我们知道JVM的主要功能是执行编译器生成的字节码。

    每个操作系统都有不同的JVM,但是在执行字节码后它们产生的输出在所有操作系统中都是相同的。 
    这意味着在Windows上生成的字节代码可以在Mac OS上运行,反之亦然。 
    这就是我们将java称为平台无关语言的原因,下图展示了这个过程:

    JVM总结: 
    Java虚拟机(JVM)是在实际机器(您的计算机)上运行并执行Java字节代码的虚拟机。 
    JVM不了解Java源代码,这就是为什么我们需要使用javac编译器来编译* .java文件, 从而获取包含JVM理解的字节代码的* .class文件。 
    JVM使java可移植(一次编写,随处运行)。 
    每个操作系统都有不同的JVM,但是在执行字节代码后它们产生的输出在所有操作系统中都是相同的。

  • 相关阅读:
    sql server数据库中char,varchar,nvarchar字段的区别
    SQLServer 实现rownum 的功能
    web.config加密和解密
    页面命名和用户控件命名一样带来的后果
    oracle初识
    加载类成员技巧
    string.Empty与"",null的区别
    收集了一些有关网页设计的问题集
    网页最顶部转瞬即逝的巨幅广告特效
    鼠标放在图片连接上面,预览图片
  • 原文地址:https://www.cnblogs.com/lev1/p/11061683.html
Copyright © 2011-2022 走看看