深入理解JVM 第一章之1

来源:互联网 发布:局域网管控软件 编辑:程序博客网 时间:2024/06/13 05:27

声明:本系列博客内容均来自于《深入理解Java虚拟机》,感谢作者和译者
1. Java面向网络体系结构三大支柱:平台无关性、安全性、网络移动性
2. Java虚拟机的基本结构:Class loader+执行引擎
3. Java虚拟机是一台抽象的计算机,其规范定义了每个Java虚拟机都要实现的特性,但是每个特性的实现都可以有很多选择。例如,虽然每台虚拟机都要求必须执行字节码,但是执行的方式可以不同,可以使用软件实现也可以使用硬件实现。
3. Java体系结构:独立又相关的四个技术:

  - Java程序设计语言  - Java .class 文件  - Java应用编程接口(Java API)  - Java虚拟机

4. Java解决一个安全性问题:从网络上下载的程序很可能是病毒,这些程序很可能来袭击你的代码,然而Java提供了一种可以以不同的定制安全级别运行的方式来提供了保护,并且可以将它们放到不同命名空间中,不同命名空间中的类默认情况下是不能互相访问的。
5. 安全性的另一个方面是程序的健壮性:Java体系结构对程序的健壮性提供了一定的保障,例如数组边界检测,并且一些有害的代码不会出现在Java中,例如内存泄漏。这种体系结构可以保障从网上下载下来的代码不会有意无意的崩溃,所以它可以提供程序员的生产力,因为它天生可以预防很多bug,程序员不需要去发现他们。
6. Java程序运行流程:程序编写->编译源代码(这一步只编译代码,源代码中用到的类和方法不参与此过程)->虚拟机(中的类加载器)加载原代码的.class文件和用到的类的.class文件->虚拟机(中的执行引擎)调用本地方法(执行)<->主机操作系统
7. 编译时只编译源程序的代码,不包括其中调用的API方法。
8. Java虚拟机的主要的任务就是装载字节码文件并执行其中的字节码。
9. JVM中的类加载器负责加载源程序的字节码文件和源程序中用到的API中的节码文件,只有当程序执行的时候用到了这些API的方法,这些类才会被加载。
10. 字节码由执行引擎来执行的。

0 0
原创粉丝点击