第l章走近 Java
世界上并没有完美的程序,但我们并不因此而沮丧,因为写程序本来就是一个不断追求完美的过程.
1.1.概述
Java 不仅仅是一门编程语言,还是一个自一系列计算机软件和规范形成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用于嵌入式系统、移动终端、企业服务器和大型机等各种场合,时至今日,Java 技术体系已经吸引了 600 多万软件开发者,这是全球最大的软件开发团队。
1.2 .Java技术体系
Java 技术体系,包括丁以下几个组成部分:
1.Java 程序设计语盲
2.各种硬件平台上的 Java 虚拟机
3.Class 文件格式
4.Java API 提库
5.来自商业机构和开源社区的第三方Java类库
根据各个组成部分的功能来进行划分:
按照技术所服务的领域来划分,或者按照J ava技术关注的重点业务领域划分, Java 技术体系可以分为四个平台,分别为:
口 Java Card : 支持一些Java小程序 ( Apple ts) 运行在小内存设备(如智能卡)上的平台。
口Java ME( Micro Ed it ion) : 支持Java程序运行在移动终端(手机、PDA ) 上的平台,
对 J ava API 有所精简,并加入了针对移动终端的支持,这个版本以前成为 J2ME。
口 Java SE (Standard Edit ion ) : 支持而向桌面级应用(如 Windows 下的应用程序)
的 Java 平台,提供了完整的Java核心API,这个版本以前称为J2SE。
口 Java EE (Enterpri se Ed ition): 支持使用多层架构的企业应用(如 ERP,CRM 应用
的Java平台,除了提供Java SE API 外,还对其做了大量的扩充并提供了相关
部署支持,这个版本以前成称为J2EE。
1.3.展望J ava 技术的未来
1.3.1.模块化
1.3.2.混合语言
1.3.3.多核并行
1.3.4.造一步丰富语法
1.3.5.64 缸虚拟机
1.4.实战:自己编译 JDK
1.4.1.获取 JDK 源码
获取源码有两种方式:
一种是通过 Mercurial 代码版本管理工具从 Repository中直接取得源码(Repository地址:http://hg.openjdk.java.net/jdk7/jdk7)
另外一种就是直接下载官方打包好的源码包了,可以从 Source Releases 页面(地址:http://download.java.net/openjdk/jdk7/)取得打包好的源码,一般来说大概一个月左右会更新一次,虽然不够及时,但的确方便了许多。
1.4.2.系统需求
建议尽量在 Linux 或 Solaris 上构建OpenJDK,编译涉及的所有文件都必须存放在 NTFS 格式的文件系统中,因为 FAT32 格式无法支持大小写敏感的文件名。对系统的最后一点要求就是所有的文件,包括源码和依赖项目,都不要放在包含中文或空格的目录里面。
1.4.3.构建编译环境
准备编译环境的第一步是安装一个 CYGWIN①。这是一个在Windows 平台下模拟 Linux 运行环境的软件,提供了一系列的 Linux 命令支持。需要 CYGWIN 的原因是因为在编译中要使用 GNU Make来执行 Makefile 文件(C/C++程序员肯定很熟悉,如果只使用 Java,把它当做 C++版本的 ANT 看待就可以了)。
建立编译环境的第二步是安装编译器。JDK 中最核心的代码(Java 虚拟机及 JDK 中 Native 方法的实现等)是使用 C++语言及少量的 C 语言编写的,官方文档中说它们的内部开发环境是在Microsoft Visual Studio C++ 2003(VS2003)中进行编译的,同时也在 Microsoft Visual Studio C++ 2010(VS2010)中测试过,所以最好只选择这两个编译器中的一个进行编译。
最后一个步骤是下载一个 Apache ANT,JDK 中的 Java 代码部分都是使用 ANT 脚本进行编译的,ANT 版本要求在 1.6.5 以上。
1.4.4.准备依赖项
1.4.5.进行编译