图书前言

本书的特色

Java语言问世20年了,一直是世界第一编程语言,被誉为计算机界的“英语”。北京尚

学堂科技11年来一直从事Java语言的相关培训教学,并且同国内外上千家企业有直接的用人

合作。我们深知学员的需求是什么,企业的技术要求是什么。

企业要求:程序员既要有实战技能,可以快速上手,同时又要拥有扎实的内功,熟悉底

层原理,后劲十足。因此,在笔试和面试考查的时候也是结合“底层原理、数据结构、实战

应用、设计思维”四个方面进行的。针对这四方面的需求,我们编写了本书,这也是本书的

四大特点。

第一大特点:注重实战应用。精心设计的案例对于工作多年的读者也有参考价值;在

本书第一章就引入了游戏项目案例,让大家从一开始就能体验“编程之美”与“编程之

乐”。读者在学习的第一天就可以“炫耀”一下,使自信翻倍。

第二大特点:底层原理讲解丰富。对于面向对象核心内容的讲解,本书深入到内存分

析,让读者对于对象底层有形象的认识;对于内存管理的知识,本书也深入到JVM底层设

计进行讲解。通过这些讲解,让读者不仅可以理解底层核心技术,而且对于日后的笔试与

面试做到胸有成竹,为以后的工作打下更加扎实的基础。

第三大特点:结合实战讲解数据结构和JDK源码。本书对大多数类的讲解都深入到JDK

源码,带大家学习真正高手的写法;容器一章更是深入讲解了数据结构和源码,并做到深

入浅出,帮助大家修炼深厚的“编程内功”。

第四大特点:植入设计者思维。如果本书的读者是初学者,我们要让初学者从知其然

进化到知其所以然。本书引入了设计模式与多线程架构的讲解,初学者可以通过这些内容

从一开始就培养设计的思维与架构的思维,为以后的发展铺设好“高速公路”。

如何学习本书

本书共分18章,这里对各章节做简要说明,以方便读者概览全书。

第1章讲解Java的入门知识,配置开发环境,开发第一个Java程序,开始使用

Eclipse,开发自己的第一个游戏项目。

第2章讲解数据类型、运算符和变量,这是编程的基础,是程序的“砖块”。

第3章讲解控制语句:条件判断结构、循环结构。控制语句是编程的基础,是程序的

“混凝土”。本章是进入编程世界的门槛,需要进行大量练习。

第4章讲解Java面向对象编程基础知识。本章通过类、对象、包等基本概念以及内存

分析、JVM内存管理的讲解,让大家一开始就深入底层,更深刻地了解对象概念。

第5章讲解Java面向对象编程的进阶知识,主要包含继承、封装、多态三大特征以及

接口、抽象类、内部类等概念。

第6章讲解异常机制。本章通过导引问题让大家知道为什么需要异常机制,处理异常

的多种手段,以及开发中常见异常的应对方式。

第7章数组。本章从底层讲解数组的本质、数组的常见使用方式,通过排序和搜索算

法,既可练习数组的用法,也可学习算法知识,为应对企业笔试和面试做好准备。

第8章常用类。本章讲解多种常用类的用法:包装类、字符串相关类、时间处理相关

类、Math类、File类等。在讲解过程中,结合JDK源码,让大家更深刻地理解用法。

第9章容器。本章讲解各种容器的用法:List 、Map 、Set。本章还引入数据结构的相关

内容,通过源码分析让大家既学习了容器,又学习了数据结构的知识。练好了内功,应对企

业面试绰绰有余。

第10章输入与输出技术。本章配置了各种在工作中有参考价值的实用案例,并且讲

解了在工作中常用的Apache Commons I/O工具库,还通过引入设计模式概念,让大家明白整

个I/O流体系架构。

第11章多线程技术。本章深入讲解了多线程的基本用法、生命周期与状态转化的知

识,同时对同步机制做了深入讲解,还引入生产者与消费者模式,让大家具备架构设计的

思维。此外还额外加入了定时机制与任务调度的内容。

第12章网络编程。本章给出了实用价值极高的案例,让大家通过案例的学习,举一

反三,就可以完成TCP、UDP的各种应用编程。

第13章 J20飞机游戏项目。本章通过手把手教学,用一个游戏项目将前面1~12章的

知识全部做了串联,寓教于乐,让大家了解项目开发的全流程。

第14~16章讲解基本的Swing知识与事件模型。需要强调的是,Swing在工作中极少

用到,但为了知识的完整性,这里只进行简单讲解,不作为重点。

第17章反射机制。反射是Java 的高级特性,在工作和学习中得到了广泛应用,掌握反

射的本质及应用,非常有必要。

第18章核心设计模式。GoF 23 设计模式的内容庞杂,这里只选取在工作和学习中最

重要的几个设计模式进行了深入讲解,让大家从一开始就具备设计的思维。同时,这也是

面试中常涉及的内容,掌握设计模式可以为你加分不少。

本书配套资源

1. 视频资源库(1000G视频资源)

读者在学习本书的过程中,可以结合附赠的《Java 300集》大型教学视频进行学习,能

更好地理解本书内容,拓展Java编程视野。

注:《Java 300集》大型教学视频已经被北京大学计算机系教授推荐为必看视频教程。

读者可以访问网址http://www.bjsxt.com/download.html 观看视频。此外,该网站还提供

了很多由尚学堂老师录制的课堂教学视频,累计达1000G的视频资源,涵盖了IT行业的方方

面面,内容原汁原味,课堂气氛活跃,免费共享给读者学习使用。

2. PPT和题库(高校老师专职助手)

为了便于院校老师使用本书,专门开放了我们现有的PPT和题库,并且可以针对不用院

校的需求进行适当调整,我们还为每一位院校老师提供专职助手,有针对性地调整教学内

容及考试题库,需要的老师请联系:www.bjsxt.com 。

3. 开发者常用英文词汇表(1800个开发词汇)

由尚学堂学员孙波(现已工作)在老师指导下完成。

词汇表涵盖了日常开发中的常见词汇,通晓这些词汇,可以让你游刃有余地阅读英文

文档,完成高手进阶的必由之路。

下载地址:http://www.bjsxt.com/download.html 。

4. 实例源码

本书各章实例源码可按以下方法免费下载:

登录清华大学出版社网站(www.tup.com.cn ),搜索本书后在“资源管理”中下载本书

相关源码。

鸣 谢

本书由北京尚学堂科技教研部编写,其中主要编写者为高淇,参与本书编写工作的还

有刘凯力、王焕等。

本书在出版过程中,得到了清华大学出版社栾大成、杨如林老师的大力支持,在此表

示衷心的感谢。另外,本书的所有编审、发行人员为本书的出版发行付出了辛勤的劳动,

在此一并致以诚挚的谢意。

我们以科学、严谨的态度,力求精益求精,但错误之处在所难免,敬请广大读者批评

指正,我们将不胜感激。

教研部出版组邮箱:book@sxt.cn;高淇老师邮箱:gaoqi@sxt.cn。

作者