Java高手真经·编程基础卷:Java核心编程技术
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

一、本书学习目标

Java本身是一种设计非常简单、非常精巧的语言,要学会Java基础,必须掌握从Java开发环境的搭建到Java基础语法知识,再到Java的核心API。根据由浅入深的顺序,我们的学习目标分为如下4个大的方面,它们的关系如下图所示。

对于以上4个方面的内容,前两部分是基础,第3部分是核心,第4部分是补充和完善。这4个方面的技术内容包括如下。

(1)Java开发入门:必须掌握Java开发环境的安装与使用,包括JDK命令、Eclipse集成开发环境、Linux下Java程序的开发与部署等。

(2)Java语法基础:在JDK和Eclipse开发环境下,要进行Java核心功能的开发,必须了解Java面向对象的语法构成,包括类、抽象类、接口、最终类、静态类、匿名类、内部类、异常的编写,并注意编写符合Java编码规范和文件样式的代码。

(3)Java核心API:根据JDK提供的类库,需要掌握三大核心功能。

Java核心编程:包括Java编程的两大核心功能——Java输入/输出流和多线程,以及常用的辅助类库——实体类、集合类、正则表达式、XML和属性文件。

Java图形编程:包括Sun的GUI库AWT(Java2D、JavaSound、JMF)和Swing,IBM的GUI库SWT和Jface。

Java网络编程:进行Java网络编程的几种重要技术,根据应用场景的不同可以包括Applet组件编程、Socket编程、NIO非阻塞Socket编程、RMI和CORBA分布式开发。

(4)Java高级特性:掌握JDK 1.4、JDK 5.0、JDK 6.0中的Java高级特性,包括反射、泛型、注释符,以及Java的新特性——自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入等。

二、本书学习课程安排

本书的内容总体上分为6个部分,从Java开发环境的引入,逐层深入讲解Java的各种技术,包括Java语法基础知识、核心编程、图形编程、网络编程、高级特性。各部分内容安排如下。

从对应包一列可以看到,讲解的内容覆盖了大部分的JDK库包,并且都将讲解过程中的演示代码和实例打包在光盘中。每一章的正文内容和课后上机作业都根据内容多少和重要性规定了学习和上机的时间(分钟),总的正文学习时间为2210分钟(36.8小时),上机时间为1890分钟(31.5小时)。这是对于讲课培训给出的参考时间,读者自学时需要至少2倍的集中时间学习。

三、本书范例程序

本书从第1部分到第6部分逐层深入,分别讲解了各种开发技术的使用,并做了入门使用的样例,也通过实例和上机作业进行实战演练。所有的测试代码和实例都打包放在光盘中source目录下,共包括25个程序包:

第1部分(2个程序包)

      HelloWorld.zip     01.Java入门样例HelloWorld
      demo.zip              03.Eclipse入门样例demo

第2部分(3个程序包)

      javasyntax.zip      05.Java核心语法详解
      javaoop.zip            06.Java面向对象编程(计算器)
      javaexception.zip      07.Java面向对象编程扩展(计算器异常捕捉实例)

第3部分(5个程序包)

      javaio.zip              09.Java输入/输出流
      javavi.zip              09.Java输入/输出流上机作业参考(文本编辑器)
      javathread.zip      10.Java多线程编程(线程池、生产者消费者、存取款实例)
      javautil.zip            11.Java常用实体类
      javaxml.zip             14.XML与属性文件

第4部分(6个程序包)

      javagui.zip             15.Java GUI库对比实例
      javaawt.zip             16.AWT图形界面开发——Java文本编辑器
      javamedia.zip      17.AWT多媒体编程——录音机、MP3播放器、视频拍照、视频播放器
      javaswing.zip      18.Swing图形界面开发——Java文本编辑器
      javaswt.zip             19.SWT图形界面开发——Java文本编辑器
      javajface.zip           20.SWT增强组件库JFace

第5部分(5个程序包)

      javaapplet.zip      21.Applet网络组件——电子相册
      javanet.zip             22.Java网络编程详解(Socket/UDP实例、简单聊天系统)
      javanio.zip             23.NIO非阻塞通信(Socket/UDP实例、简单聊天系统)
      javarmi.zip             24.RMI编程(HelloWorld实例、计算器实例)
      javacorba.zip       25.Corba编程(HelloWorld实例、计算器实例)

第6部分(4个程序包)

      javareflection.zip        26.Java反射机制与动态代理
      javageneric.zip     27.Java泛型编程
      javaannotation.zip        28.Java注释符编程
      javafeature.zip     29.Java 5.0语言新特性

在这些样例中,除了第1章HelloWorld.zip是根据命令行编译的,其他的程序包都是在Eclipse 3.4中开发的,你可以直接使用Eclipse的导入功能导入这些程序包。导入的方法:首先将要运行的程序包解压缩到Eclipse的工作目录(如D:\eclipse\workspace),单击Eclipse左侧的项目工作区空白处,单击鼠标右键,在弹出的右键菜单中选择“导入”,然后在弹出的导入窗口中选择“从现有项目到工作空间中”,并选择刚才解压缩后的程序目录,单击“确定”按钮即可导入到Eclipse中。

注意:在将项目导入到Eclipse之前,需要设置Eclipse系统的默认编码方式为UTF-8,否则项目中的中文会显示为乱码。设置的方法是:选择Eclipse菜单【Windows】→【Preferences】,在弹出的设置窗口中选择【General】→【Workspace】,选择编码为UTF-8即可。

四、光盘使用说明

在光盘software目录下仅包含了本书所需要软件安装包的下载存放目录,并在software\readme.txt中详细记录了每一个软件的官方网站、所需版本和该版本的下载链接地址,请读者在学习本书前到指定的网址下载各个软件。

说明:考虑到版权问题,我们只提供了这些软件的下载链接地址。这些下载地址在本书写作时都已经经过了验证确认,有些链接也许需要您注册登录后才能够下载。如果下载的链接地址不存在,则表明该网站已经移除了链接,请您在指定的官方网站上找到下载的页面来下载对应版本的文件。

本书所用软件、使用版本、下载地址列表:

(1)JDK

      本书使用版本:1.6.0
      官方网站:http://java.sun.com/
      下载页面:http://java.sun.com/javase/downloads/index.jsp
      下载文件:jdk-6u10-beta-windows-i586-p.exe、jdk-6u10-beta-linux-i586.bin、jdk-6u10-beta-linux-
                i586-rpm.bin

(2)Eclipse

      本书使用版本:3.4
      官方网站:http://www.eclipse.org/
      下载页面:http://www.eclipse.org/downloads/
      下载地址:http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops/
                R-3.4-200806172000/eclipse-SDK-3.4-win32.zip
      下载文件:eclipse-SDK-3.4-win32.zip、eclipse-java-ganymede-linux-gtk.tar.gz

(3)Jad反编译软件

      本书使用版本:1.5.8
      官方网站:http://www.kpdus.com/jad.html
      下载页面:http://www.kpdus.com/jad/winnt/jadnt158.zip
      Jadclipse地址:http://sourceforge.net/projects/jadclipse

(4)虚拟机软件VMWare

      本书使用版本:6.0.4
      官方网站:http://www.vmware.com/
      下载页面:http://www.vmware.com/downloads/eula.do
      下载文件:VMware-workstation-6.0.4-93057.exe

(5)AWT mp3支持包

      本书使用版本:1.9.4
      官方网站:http://www.javazoom.net/
      下载页面:http://www.javazoom.net/mp3spi/sources.html
      下载地址:http://www.javazoom.net/mp3spi/sources/mp3spi1.9.4.zip
      下载文件:mp3spi1.9.4.zip

(6)AWT JMF包

      本书使用版本:1.9.4
      官方网站:http://java.sun.com/javase/technologies/desktop/media/jmf/index.jsp
      下载页面:http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/download.html
      下载地址:http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site
                en_US/-/USD/VerifyItem-Start/jmf-2_1_1e-windows-i586.exe?BundledLineItemUUID=
                McRIBe.mExYAAAEd6.IHtp.m&OrderID=X7RIBe.m1HIAAAEd1eIHtp.m&ProductID
                =X4zACUFBcakAAAEYzNI5AXis&FileName=/jmf-2_1_1e-windows-i586.exe
      下载文件:jmf-2_1_1e-windows-i586.exe

五、致谢

参与本书技术调研和程序调试的有:李金刚、刘剑、陈景春、周同、刘中敏、陈万珍、李瑞霞、耿博、李建海。本书在编写过程中得到了Apache软件组织和Sun公司在技术上的大力支持,飞思科技产品研发中心负责监制工作,在此表示衷心感谢!尽管我们尽了最大努力,但本书难免会有不妥之处,欢迎各界专家和读者朋友批评指正。

本书专业论坛交流答疑:www.100tt.net


编 著 者





联系方式

咨询电话:(010)6813454588254160

电子邮件:support@fecit.com.cn

服务网址:http://www.fecit.com.cn http://www.fecit.net

通用网址:计算机图书、飞思、飞思教育、飞思科技、FECIT