《JAVA深度历险》笔记(一)深入JAVA2 SDK

     我们无论是刚开始学习Java还是在工作中使用了多年,难以避免的看到“Class Not Found”等一些“奇怪”的错误。我们遇到这些莫名其妙的错误,很多时候找错误很麻木,靠“碰运气”。一名优秀的java程序员,应当关注于JAVA正常运行的细节,用正确的角度去分析遇到的问题。所以要成为一名优秀的Java开发人员,必须去应该了解JVM。

      最近,看了一本叫《JAVA深度历险》的书。这本书没有深入的介绍JVM,但是作者总结的技巧都涉及到JVM层面的东西。我觉得作为一本JVM入门书,非常不错。因为作者本身是中国人,虽然繁体字我们有点不习惯,但是相对于那些纠结的翻译版,确实好多了。下面是一些笔记和书中关键知识点的总结。

        JRE的地位就像PC一样,我们写好的程序在PC上需要操作系统帮我们执行,同样的,我们所写的JAVA程序也必须要JRE才能帮我们执行。JVM只是JRE的一个成员,从技术角度上看,JVM只是JRE里头一个动态链接库。

《JAVA深度历险》笔记(一)深入JAVA2 SDK


JDKJREJVM关系,与PC进行的类比

        JDK里面附上许多开发工具(例如javac.exe,jar,exe等),他们都放在lib\tools.jar里面,这些程序都是用java说写的,.exe只是一个包装器(wrapper),只是为了让开发者不用输入太长的命令而已,他们执行的只是tools.jar里面的程序。

《JAVA深度历险》笔记(一)深入JAVA2 SDK

真正运行.exe的过程


        系统上有好多套JREjava.exe需要寻找合适的JRE运行,下面是它寻找JRE的过程:

              1、自己目录下有无JRE目录。

              2、父目录下JRE子目录

              3、查询windows注册表上关于JRE目录信息

        而Java.exe找到JRE后,其实还需要验证版本,需要两者版本一致才可以运行。

你可能感兴趣的:(java,jvm,jdk,windows,工作)