没有合适的资源?快使用搜索试试~ 我知道了~
java深度历险(简体中文)
4星 · 超过85%的资源 需积分: 10 189 下载量 100 浏览量
2010-09-05
23:30:57
上传
评论 4
收藏 7.85MB PDF 举报
温馨提示
试读
207页
java深度历险(简体中文) java深度历险(简体中文) java深度历险(简体中文) java深度历险(简体中文) java深度历险(简体中文) java深度历险(简体中文) java深度历险(简体中文) java深度历险(简体中文)
资源推荐
资源详情
资源评论
A-PDF Merger DEMO : Purchase from www.A-PDF.com to remove the watermark
导读
我的第一份「正式」工作就是在太阳计算机(SunMicrosystems)台湾分公司
的教育训练中心从事讲师工作。在这之前,我除了当个管理学院的研究生之外,
闲暇之余还会到处兼职当顾问、接接Project 写程序糊口。这本书很多最初始的
概念都源自于当时所服务的公司里头工程师所遇到的难题,或是自己使用Java
撰写应用程序的时候所遇到百思不解的问题。
承蒙洪志鹏总经理愿意收留我这样的人,到了Sun 工作之后,利用内部网
路所看到的世界,竟然是一个我从没想过的天堂。我猜这是很多人愿意一开始就
到大型软件公司上班的最大原因。在Sun 待了一阵子你就发现,Sun 跟Microsoft
是不一样的公司,由于两家企业所发迹的领域不太相同,导致Sun 在设计软件
的时候比较重视架构,尤其是应用在企业领域上的软件架构,您可以从两个地方
看出来,第一个是Java 的认证考试中,最高级的认证叫做SCJA(架构师认证),
第二个是市面上关于Java 的书籍,排除入门书之后,许多重要的书籍都和
DesignPattern 有关系,比方说J2EEDesignPattern、EJBDesignPattern,
关于系统的书籍就少的可怜,讲JVM 的书屈指可数,我手边讲述Java 系统的
书籍,我认为是好书的也只有两本。微软则刚好相反,微软重视系统更甚于架构,
您可以发现.NET 刚出来,就有一堆讲述CLR(CommonLanguageRuntime)
或.NET 内部运作的书籍,而讲述架构的书籍就少的多了。
很可惜的是,我本身就是一个系统的爱好者。最近这一年唯一让我觉得拍
案叫奇的好书,就只有JefferyRichter 所撰写的AppliedMicrosoft.NET
FrameworkProgramming,我就是喜欢AppliedMicrosoft.NETFramework
Programming 这种书籍的读者。看完JefferyRichter 的书之后,最大的悔恨
就是Java 出现了将近7 年,可是却没有任何一本类似的书籍让我们更了解
JDK,或是Java 的运作原理。这本书就是在这种悔恨之下形成的,虽然不是很
厚,但是里面的每一篇都是我这几年来研究Java 运作的心得。所以这里要感谢
Run!PC 的技术编辑吕志敏先生,没有他每个月定期的催稿,我就没有办法定期
地整理我的心得,并将他们发表在杂志上,更没有办法在获得很多读者的响应之
后,重新整理这些内容成册,并适当地加以修订和整合。我希望喜欢系统的朋友
读完这本书之后,不再有跟我一样的悔恨,而且对Java 这个将近10 年前就有
的设计更具信心。
在2002 年JavaTwo 时,我用『数学家、物理学家、以及工程师的差别』
来介绍自己。数学家的心情套用在我的身上,就知道我是个非常懒惰的人,你可
能会以为我手边有JDK 的原始码,所以我就会先花功夫去读懂JDK 的原始码,
然后把结果告诉你。事实上并非如此,撰写这本书的时候,尤其是第五章
『package 与import 机制』,因为我懒得去看Java 编译程序的原始码,所以
我采用的方式是归纳法。我先设计了很多其奇怪怪的usecase,然后对Java
编译程序进行测试,利用所产生的结果来想象Java 编译程序的运作方式,最后归纳
出属于我自己对Java 编译程序运作方式的『理论』。最后我花一点点时间来阅读
原始码,发现竟然和我的推论不谋而合,所以这一章大概是我自以为最有成就感
的一章。这种写作方式也让我发现,现代的科学家在探究我们所身处的世界时所
使用的方法,竟然是如此地让人兴奋。
记得有一次讲完一场研讨会之后,有个听众来问我:「王森先生,我们公司
使用BorlandJBuilder 开发应用程序,可是遇到很多问题,比方说常常出现
ClassNotFound 的错误讯息」。原来,JBuilder 虽然是一套RAD 开发工具,
但是他却不像其他如VisualBasic、Delphi、BorlandC++Builder 一般好上手,
因为它有其进入门坎。而这个进入门坎,来自于存在于JBuilder 底部的Java2
SDK。如果对Java2SDK 没有深入的了解,想要平顺地驾驭更高阶的开发工具
绝对是一件很难的事情。我希望这本书带您跨过这个门坎。
这本书并未对Java 程序语言做讨论,因为彷间这类的好书已经非常多了。
本书着眼于其他Java 书即从来没有提到的议题。期望带给您真正对Java 的『深
度历险』,也希望众多Java 爱好者对这本书的响应,可以支持我整理出更多有
趣的议题。
要感谢的人很多,很多我都在我先前的著作中提及了,我在心里默默的感激
他们。如果您认为这本书带给您很多新的知识,请您也跟我一同感谢这些我生命
中不可或缺的人们,以及催生这本书的所有工作伙伴。
SunMicrosystems
教育训练服务 技术顾问
王森
moli.wang@gmail.com
第一章
深入Java2SDK
你越讨厌的事情,就越容易遇上
█前言
SunMicrosystems 所发表的Java 开发工具–Java2SDK,永远都是Java
初 学 者 最 早 接 触 到 的 开 发 工 具 。 一 般 人 习 惯 称 这 套 工 具 叫 作JDK(Java
DevelopmentKit)。
图:Java 版本及开发工具的演进
Personal
Java 1.0
Personal
Java 1.1
Personal
Java 1.2
Java Platform(JDK)
Java 2 Platform(Java 2 SDK)
OAK
Java 1.0
Java 1.1
Java 1.2
Java 1.3
Java 1.4
Embedded
Java
JDK 是在Java2Platform 之前的JavaPlatform 所使用的开发工具名称(在
本文中有时候会写JDK,有时候会写Java2SDK,但指的将是同一种东西),我
记得曾经有人戏称它是JavaDeveloperKiller 的缩写,除了挖苦Sun 所制作的
开发工具没有微软设计的开发工具要来的方便之外,其实还说明了另外一件事,
就是Java 从1995 年发表后到现在,即使每一版的JDK 都会附上为数庞大的官
方说明文件,从来没有任何一份文件或一本书籍详细说明这套官方开发工具的特
性。
没有文件或书籍来描述JDK 的特性并不代表这些特性不重要。毕竟,任何最
新的标准类别函式库,或是最新版本的虚拟机,一定都会伴随着最新版的JDK
所释出。就算您想跳过JDK,直接使用如BorlandJBuilder 或ForteforJava
这类的高级开发工具,JDK 仍然如影随形。以BorlandJBuilder 来说,当您将
BorlandJBuilder 安装完成之后,在JBuilder 的所在目录下也会内含一套Java
1
2SDK,如下图所示:
图:BorlandJBuilder 内附的Java2SDK
因此,我们可以得知,不管您如何地讨厌JDK,只要想开发Java 相关的应
用程序,您就无法逃离JDK 的掌握。事实上,不管您开发的是J2SE、J2EE、J2ME、
甚至JavaCard 的应用程序,除了需要各种版本对应的开发工具包之外,一定需
要JDK 的辅助。
图:各种版本的Java 应用程序,都需要Java2SDK 的辅助
2
J2EE SDK
J2ME SDK
Java Card
SDK
J2SE(Java SDK)
那么,JDK 到底是什么东西? 从技术的观点来说,因为高阶开发工具都是
架设在JDK 上头,因此高阶开发工具的行为或是引发的错误讯息都是根源自
JDK。为了更正确地掌控高阶的Java 开发工具,所以我们必须了解JDK 的特性
和组成。 从求知的观点来看,Java 程序设计师每天输入无数的javaxxx.java
与javaxxx,到底Java 程序是如何运作的? 在我们看不到的底层,到底发生了
什么事情? 如果我们可以清楚地得知所有的来龙去脉,将会让我们更了解这套开
发工具。
上述两个观点,都是本章所希望告诉您的。让我们开始深入了解JDK 吧!
█执行java.exe 时所发生的怪事
当您在使用JDK 时,您是否曾经发现执行java.exe 的时候,会有底下一些
奇怪的现象:
如果您安装的是Java2SDK1.3.x:
当您安装完Java2SDK1.3.x 之后,如果从未修改您计算机里头的任何设定,
就直接进到命令提示字符下,执行java.exe,就会出现底下画面:
3
剩余206页未读,继续阅读
老邢说
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页