第1-7讲 Java的开发运行环境.pdf

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 1 章 Java 的开发运行环境 学好Java 最重要的一个步骤就是上机编程,熟悉Java 的开发运行环境是成为Java 程 序员的第一步。本章将详细介绍如何安装并配置好Sun 公司提供的JDK1.5 for Windows , 如何编制一个简单的Java 程序,如何编译一个Java 源程序,如何运行编译好的class 文件 以及如何避免初学者常犯的错误。通过本章的学习,将轻松地迈入Java 的殿堂。 1.1 Java 的运行环境与虚拟机 任何一个可执行文件,都必须在某个平台上才能运行。例如,Windows 下的exe 文件, 必须在Windows 环境下、X86 硬件平台上才能运行。这些exe 文件,通常是使用C/C++、 Pascal 或VB 等语言编程,然后通过编译、链接而形成的。在这些可执行文件中,包含了 运行它的硬件平台的相关信息,所以如果要把它移植到其他平台上,必须要重新编译,甚 至要修改源文件。 Java 和这些语言不同,它的最大特点就是平台无关性。Java 文件经编译后,生成的是 一个后缀名为class 的文件。这是一种字节码文件,它不像普通可执行文件那样包含硬件信 息,而是完全与硬件平台无关,也就是无法直接由操作系统调用运行。所以Java 的应用程 序,需要一个更为复杂的平台才能运行。这个运行平台,包括计算机操作系统、适配器、 Java 虚拟机、Java 基本软件和Java 应用程序接口,它们负责将Java 的字节码翻译成硬件 可以接受的指令。整个运行系统的结构如图1.1 所示。 图1.1 Java 运行系统 Java 运行系统执行Java 应用程序的过程包括三个步骤:首先是代码的装入,然后是代 码的验证,最后是代码的执行。 第1 章 Java 的开发运行环境 代码的装入由类装配器完成,它主要负责装入程序运行时所需要的全部代码,包括程 序运行中调用到的其他类。当类装配器装入一个类后,该类被放在自己的命名空间中,除 了通过符号引用其他类之外,该类不能影响其他类所在的空间。当装入了运行程序所需要 的所有类后,运行系统就能确定整个可执行程序的内存布局。 然后,被装入的代码将由字节码验证器进行安全检查,以确保字节代码不存在违反访 问权限、不规范的数据类型和非法调用等问题。 通过校验之后,代码就可以运行了。Java 的字节码有两种运行方式: 解释执行方式:通过“解释器”,将字节码翻译成机器码,然后由“运行支持库” 将机器码送往硬件执行。整个执行过程是一边翻译一边执行,称为解释执行。Java 系统一般采用这种方式。 即时编译方式:通过“代码生成器”,先一次性地将所有字节码翻译成适用于特定 计算机系统的机器码,然后送往硬件执行。对程序运行速度要求较高时,一般采 用这种方式。 从图 1.1 可以看出,Java 的字节码并没有直接运行在硬件平台上,而是在一个虚拟的 软件平台上运行。这个虚拟的软件平台,被称为Java 虚拟机(Java Virtual Machine ,JVM )。 为了让编译产生的字节码可以更好地解释与执行,通常把JVM 分成 6 个功能模块:JVM 解释器、指令系统、寄存器、栈、存储区和碎片回收区。 JVM 解释器:JVM 解释器负责将字节码转换成为CPU 能执行的机器指令。 指令系统:指令系统同硬件计算机很相似。一条指令分成操作码和操作数两部分。 操作码为 8 位二进制数,操作数可以根据需要而定。操作码是为了说明一条指令 的功能,所以JVM 可以有多达256 种不同的操作指令。 寄存器:JVM 有自己的虚拟寄存器,这样就可以快速地和JVM 的解释器进行数据 交换。为了实现必需的功能,JVM 设置了4 个常用的32 位寄存器:pc (程序计数 器)、optop (操作数栈顶指针)、frame (当前执行环境指针)和vars (指向当前执 行环境中第一个局部变量的指针)。 栈:JVM 栈是指令执行时数据和信息存储的场所和控制

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档