前 言
Java是一种网络编程语言,因为问世比较晚,所以避免了许多其他编程语言的缺点,并且很好地继承了其他编程语言的优点,也因此受到无数开发人员的喜爱。中国的软件业目前还处于初级阶段,所以其发展潜力相当大,技术精湛的Java工程师缺口很大,企业对Java人才的需求量也是很大的;在51job人才招聘网上,截止到2009年6月1日,关于Java的招聘岗位大约有11 508个。因此学好Java,就会拥有更多的就业机会。
目前市场上关于Java的书很多,但是大部分都是从理论上讲解,介绍函数的用法,远远达不到实战的层次。本书完全采用目的驱动,结合实际开发中的小问题,逐个解决,让读者在编写代码的过程中掌握Java技术精髓。
本书特点
1.实例丰富,贴近实战
本书实例丰富,共有21章计200多个实例,每个实例都紧贴实际应用,比如“用公钥计算消息摘要的验证码”,就具有很强的示范性和实用价值。读者可以直接使用书中的实例解决实际问题。
2.注重技巧,有的放矢
本书所有实例在Java基本知识方面不做过多介绍,重点讲述常用、实用的编程技术。在编写每个实例的过程中,都遵循良好的编程规范,并给出详细的注释说明,方便读者理解。
3.层次清晰,循序渐进
全书分为21章,涵盖了Java技术的方方面面、结构非常清晰。本书根据Java开发者的学习曲线,以一种循序渐进的方式,深入浅出地介绍了Java语法等基础知识、各种企业级开发相关的高级知识,以及一个综合性的实例。
在讲解实例的时候,首先介绍实例的作用,让读者了解讲解该实例的目的是什么;接着介绍实例中使用的技术要点,帮助读者了解该实例是如何实现的,提示读者学习该实例的重点有哪些;最后对代码的关键部分进行解读,帮助读者更好地吸收技术知识。
本书内容
第1章介绍Java开发环境的搭建,实例包括下载安装配置JDK、第一个Java程序以及如何在Eclipse中创建第一个Java程序。
第2章介绍Java的基础语法,实例包括变量和常量、基本数据类型转换、操作多种运算符、不同数制间的转换和多种方式实现阶乘的算法。
第3章介绍Java中的流程控制语句,实例包括打印任一年日历、控制台输出几何图形、杨辉三角以及拜访过程(break和continue)。
第4章介绍Java中的数组,实例包括一维数组复制、插入、合并,数组排序,数组搜索,去掉数组重复数字,求质数(素数)、矩阵的加减和转置,数组实现顺序栈与队列,以及Arrays数组的应用。
第5章介绍Java的面向对象设计,实例包括图形面积与周长、宠物结婚、一个盒子、学生的生活、员工薪资和旅游等共15个实例。
第6章介绍Java的字符串,实例包括获取字符串长度、比较字符串、Java字符串与文件的互转、截取带汉字的字符串、替换字符串中的部分字符、Java字符串之密码加密,以及正则表达式验证字符串。
第7章介绍Java的常用类,实例包括数字的舍入、Java编制的时钟、利用currentTimeMillis()记录程序执行的时间、利用换底公式求任意对数值、利用GregorianCalendar输出日历、匹配方法的使用、Pattern类的使用以及检验E-mail的合法性等共20个实例。
第8章介绍Java的集合,实例包括谁养鱼、查看书目、操作元素、栈和队列、电视频道、植物种类、不重复的随机数序列、读写Properties文件、配置Properties带附件发送邮件以及资源国际化(Properties)。
第9章介绍Java异常处理与反射机制,实例包括运用throws、throw、try与catch,throws声明异常的实例,自定义异常类,使用finally避免资源漏洞以及反射机制。
第10章介绍Java的I/O及文件操作,实例包括创建文件和目录,查找文件,删除文件夹和文件,文件锁定,分割与合并文件,Zip格式压缩、解压缩文件,从Jar中读取文本以及Java操作Excel文件等共15个实例。
第11章介绍Java的高级特性,实例包括自动装箱与拆箱、for/in循环、参数不确定、方法改变、静态导入、动物搭配、人员信息、printf()用法、使用ProcessBuilder调用外部命令以及监控管理虚拟机。
第12章介绍Java的XML开发,实例包括HTML文件转成XML文件、XML文件转成HTML文件、DOM4j解析XML文件、JDOM解析XML文件、DOM解析XML文件、SAX解析XML文件以及W3C解析XML文件。
第13章介绍Java的网络编程,实例包括获取IP地址和域名、获取网络资源(URL)、FTP文件传输模拟、自制浏览器、点对点通信、点对面通信、多线程断点续传、代理服务器的实现以及IP多点传送。
第14章介绍Java的线程,实例包括启动和停止线程、多线程同步方法、取钱存钱(线程同步互斥)、谁唤醒了我、让步传文件、家族等级、定时器以及仿迅雷下载文件等共18个实例。
第15章介绍Java的图形编程,实例包括多变的按钮、模仿QQ空间的电子相册、模仿QQ空间的欢迎动画以及水面倒影等共12个实例。
第16章介绍Java安全,实例包括凯撒密码、创建对称密钥、计算消息摘要、创建DH共享密钥、用公钥计算消息摘要的验证码以及利用DES加密解密等共18个实例。
第17章介绍Java多媒体。实例包括幸运52、三维弹球游戏、贪吃的小蛇、有趣的拼图游戏、滚动的文字、简单的GIF动画效果、简单的声音播放、多媒体播放器以及有趣的采钻游戏。
第18章介绍Java Mail,实例包括发送邮件、发送附件邮件、一对多的发送方式、接收邮件、删除邮件以及利用Java API发送E-mail。
第19章介绍数据库技术,实例包括连接各种数据库、批处理、事务处理、调用存储过程、图片文件存入数据库、数据库图片的输出以及MySQL数据库的分页形式等共16个实例。
第20章介绍JSP/Servlet技术,实例包括JSP与Servlet之间的跳转、简单的JSP多人聊天室、Servlet生成的动态图片、简单的JSP上传文件、用Servlet获取Web服务器信息、可选择的图形验证码、简单的页面注册、用Servlet实现分页查看数据库以及简单的BBS论坛。
第21章介绍Java程序综合案例:教务处管理系统,主要包括登录界面的设计与代码实现、功能选择界面的设计、学生信息系统界面的设计、教师信息系统界面的设计以及领导信息系统界面的设计。
本书的读者定位
本书具有知识全面、实例精彩、实践性强的特点,力求以系统的知识与丰富的实例来指导读者透彻学习Java各方面的技术。本书可以帮助Java初级、中级开发人员提高开发技能,书中的实例对高级开发人员也有一定的参考意义。
本书作者
本书由尹继平、张帆主笔编写。其他参与编写和资料整理的人员有冯华君、刘博、刘燕、叶青、张军、张立娟、张艺、彭涛、徐磊、戎伟、朱毅、李佳、李玉涵、杨利润、杨春娇、武鹏、潘中强、王丹、王宁、王西莉、石淑珍、程彩红、邵毅、郑丹丹、郑海平、顾旭光等。
编者
2009年6月