深入理解JVM(一)——JVM是什么?与JDK、JRE的关系

3 篇文章 0 订阅
3 篇文章 1 订阅

在正式开始深入理解JVM这个专栏之前,我们有必要先了解下什么是JVM,以及JVM与JDK、JRE三者的关系。


我们先观察上图,找到JDK、JRE、JVM的具体位置和包含的范围。

一:从范围上可以得出结论(小结一下):

    1:JDK最大,它包含JRE和JVM。

    2:JRE属于JDK,比JDK小,但包含JVM,比JVM大。

    3:JVM最小。

二:从定义上来理解

     现在有这样一个需求,我需要从A地方到达B地方。怎么办?我们可以借助交通工具。

     1:假如AB两地相邻很近,小轿车就能很方便的满足我们的需求。

        如果把小轿车比作JAVA。小轿车有很多零件组成,(如发动机、轮胎、方向盘、座椅、车窗等等),这些零件就对应Java的

        JDK(Java Development Kit),没有这些零件,Java就没办法开发。所以说JDK是整个JAVA的核心。

        有了小轿车还不行,还是不能到达目的地,得先让小轿车运行起来。小轿车运行需要一些环境条件(发动机正常启动等),

         同样JAVA运行也需要环境,JRE(Java Runtime Environment)就是JAVA运行所必须的环境。发动机就属于JDK.

         车也有了,也能运行了,好了,可以出发了。

     2:JDK和JRE我明白是什么关系了,可和JVM有什么关系?

          接着上面的问题,如果AB两个陆地不同,中间隔着一条河,怎么过?

          这个时候小轿车就过不去了,我们需要一艘船。

         船也是有很多零件组成,和小轿车一样。(JDK)

         船运行也需要一些环境条件:发动机正常启动,方向盘完好等。(JRE)

         这时,我们就需要思考,同样的零件(JDK),同样的发动机(JRE),

        在陆地上运行我们需要把它们组装成小轿车这样的机器,

        在水里上运行我们需要把它们组装成船这样的机器,

        在空中运行我们需要把它们组装成飞机这样的机器,

        不同的环境,需要不同的机器。JAVA运行也是一样,不管是在Windows环境下还是Linux环境下,JAVA也需要这样的机器,

       这个机器就是我们常说的JVM(Java Virtual Machine:Java虚拟机)。

      Java虚拟机有了这样的功能,JAVA才有了一次编译,处处运行的强大特性。


     (以上观点,纯属个人观点,理解不足的地方还请见谅)


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值