基本信息
- 原书名:Java Programming (Oracle Press)
- 原出版社: McGraw-Hill Osborne Media
内容简介
作译者
Sarang,广为熟知的Dr.Sarang,从1996年开始就已成为一名Java程序员。在过去的16年里,Sarang博士开展了多场基于Sun
Microsystems官方课程的培训项目、讲师认证考核以及企业培训。他撰写了多本关于Java和其他类似话题的书籍与期刊文章,是许多国际会议的受邀演讲嘉宾,包括最近的“JavaOne2011大会”。
目录
1.1 为什么使用Java
1.2 什么是Java
1.3 Java虚拟机
1.4 Java特性
1.4.1 体积小
1.4.2 简单.易学
1.4.3 面向对象
1.4.4 兼具编译与解释特性
1.4.5 平台无关
1.4.6 鲁棒且安全
1.4.7 支持多线程
1.4.8 动态特性
1.5 Java的演变过程
1.5.1 JDK 1.0(1996年1月23日):代号0ak
1.5.2 JDK 1.1(1997年2月19日)
1.5.3 JDK 1.2(1998年12月8日):代号Playground
1.5.4 JDK 1.3(2000年5月8日):代号Kestre1
1.5.5 JDK 1.4(2002年2月6日):代号Merlin
1.5.6 JDK 5.0(2004年9月30日):代号Tiger
译者序
本书是为数不多的系统介绍Java的一本技术书籍。作者Poornachandra Sarang和技术审稿人John Pampuch,都是Java领域的领军人物,他们知道如何写书,更知道如何介绍专业技术。本书严谨、清晰、深入、细致地介绍了Java方方面面的技术,包括集合框架、I/O编程、泛型、Swing、多线程和并发工具、网络编程等,还介绍了JavaSE 7新添加的特性,比如带资源的try语句、Fork/Join框架等。另外,此书还在互联网上免费发布了3章内容,分别介绍Java概况、Java语言中的基本概念以及Java中的运算符,欢迎广大读者下载阅读。
本书中文版得以发行,首先要感谢本书的作者,是他为我们撰写了一本好书。其次,要感谢清华大学出版社引进了本书的中文版权,使我们获得了翻译此书的机会。此外,要特别感谢清华大学出版社的李阳女士,她以巨大的热情和高度的责任心为本书的出版做了大量繁琐细致的出版业务工作。还要感谢赵宇、张霄、王玉等人在本书翻译过程中给予的大力帮助。
本书章节经过精心安排,内容承上启下,希望读者在阅读过程中能够亲手实践代码,从而更好、更充分地理解和掌握本书介绍的Java特性。本书由曹如进和张方勇翻译。尽管我们在翻译过程中力图信、达、雅,但限于自身水平,本书中文版必定存在错误、不足和不当之处,恳请广大读者将意见和建议发至drizzlecrj@gmail.com,我们不胜感激。
前言
本书组织结构
本书共分24章,刚开始的前3章发布在互联网上(www.oraclepressbooks.com)。前3章介绍了传统的Hello World程序与基本的Java语法。它们之所以放在互联网上,是因为本书的大部分读者可能是专业程序员,他们希望直接跳入语言的高级话题。在第1章初步介绍完Java以及Java的演变历史后,我们在第2章直接跳到Java数组。一直到第9章,我们对Java语言进行了深入剖析,主要关注Java中的面向对象与许多复杂的细节,比如对象的创建过程,创建继承层次,final与static修饰符的恰当使用,public、protected与private修饰符的使用场景,定义内嵌类、本地类及匿名类,最后介绍如何在Java程序中有效地处理异常。
之后,我们暂缓介绍Java语言语法,开始讨论Java库,通过一些实际的代码示例介绍I/O编程。接下来,我们将介绍一些更加高级的语法话题,比如枚举、自动装箱、注解以及泛型。书中剩下的部分关注现实世界中的应用程序开发,包括构建GUI程序、事件与用户手势处理、理解数据结构、线程与网络编程以及一些重要的Java类。
本书所有章节的顺序都经过精心安排以避免前向引用。因此,本书可按章进行阅读。如果你熟悉Java并且希望深入了解某个特定话题,可以只阅读感兴趣的相关章节。
章节介绍
本书共包含精心组织的21章内容,另外还有关于Java语法的3章内容发布在www.omclepressbooks.com上。以下是本书内容提要;
第1章简单介绍Java的历史,阐述为什么Java会被创建,什么是Java以及Java的一些主要特性。
第2章讨论如何声明和使用一维和多维数组。
第3章通过讨论什么是类来开始学习面向对象语言。这一章介绍面向对象语言的主要特性,如封装、继承与多态等。
第4章深入剖析Java面向对象中的继承特性。这一章会教你如何创建单一继承与多重继承。
第5章解释对象的创建过程以及对象创建过程中超类对象是如何构造的。
第6章通过讨论静态字段、方法与初始化器来带你深入面向对象编程的王国。
第7章通篇介绍Java类,包括内嵌类、本地类及匿名类。
第8章讨论Java中的异常处理。与前两章大量介绍Java语言的复杂特性相比,这一章会有所不同。
第9章与第10章介绍Java中的I/O编程,包括新的java.nio包。
第11章进一步讨论Java语言语法,并介绍枚举、自动装箱与注解。
第12章介绍泛型,这一章会让你对泛型的许多特性有更深入的技术理解。
第13章转向介绍Java中的实际应用程序开发,包括构建GUI应用程序,以及这类GUI应用程序中的事件处理方式。
第14章深入剖析创建复杂屏幕布局要用到的各种布局管理器。
序言
Java不只是一门语言,并且还是一种由多个部分构成的平台,这些部分包括Java语言、JVMC(Java Virtual Machine,Java虚拟机)核心库以及许多其他组件。这些组件构成了一门灵活、强大且通用的技术,并用在了各种类型的应用程序中。
Java不只是平台,并且还是自身的生态系统。构建于Java平台之上的有IDE、监测与管理工具、库、应用程序服务器、测试与调试工具、开发工具,当然还有几乎所有类型的应用程序。
在我使用Java的这些年里,开发人员的数量有了很大增长。在20世纪90年代末,开发人员的数量有数十万。而如今,Oracle报告称有超过900万的开发人员在使用Java。Java的部署数量,算上消费者设备上的Java ME,要以数十亿计。
Java一直在进步。从某些指标上来看,Oracle JDK的性能从JDK 5起有了将近3倍的提升。这些提升反映了整个平台的变化。
除了性能改善以外,Java在每一次的发布版本中都会添加一系列功能特性。Java的演变过程包含了许多优秀技术专家的指导,他们中有许多人花费了很大心思关注维护兼容性与一致性。
即使这样,Java主要版本的发布,加上偶尔有些晦涩的特性,使得像本书这样的书籍对于开发人员至关重要。类似这样的书籍对数百万开发人员采用Java有着巨大的影响,包括我自己也是如此。很庆幸Poornachandra Sarang具有这份耐心和技术能力,感谢他花费时间有效地传达Java平台错综复杂的细节。
John Pampuch
Oracle公司Javal虚拟机技术总监