序言
前言
第1章 案例提出
1.1 项目背景
1.1.1 需求概述
1.1.2 系统设想
1.1.3 Romulus系统流程
1.2 项目开发工具
1.2.1 J2SESDK 1.4
1.2.2 Xerees2
1.2.3 BCC 5.5
1.2.4 ForteforJava
1.3 项目总体框架
1.3.1 Romulus系统体系架构
1.3.2 Romulus系统考试数据模型
1.3.3 Romulus应用系统模块设计
1.3.4 利用模式完成详细设计
1.4 建立项目开发环境
1.4.1 安装JDK
1.4.2 安装Forte
1.5 本章小结
第2章 Java编程基础
2.1 Java语言概述
2.1.1 Java语言背景
2.1.2 Java语言特性
2.1.3 Java和C.C++的比较
2.1.4 Java应用程序和小程序
2.2 面向对象的软件开发
2.2.1 面向对象基本术语
2.2.2 Java和面向对象软件开发技术
2.3 Java平台
2.3.1 三种Java平台
2.3.2 J2SE平台体系架构综述
2.4 Java语法基础
2.4.1 Java关键字
2.4.2 注释
2.4.3 标识符
2.4.4 数据类型
2.4.5 运算符
2.4.6 类型转换约定
2.4.7 Java流程控制
2.5 本章小结
第3章 类.接口和包
3.1 深入Java语言访问控制
3.1.1 Java语言访问控制概述
3.1.2 解Java访问控制
3.1.3 Java访问控制的合理使用
3.1.4 Java访问控制的其他使用
3.2 案例完善:Romulus系统中的访问控制
3.3 多态性的Java实施方法
3.3.1 继承的问题和使用
3.3.2 Java多态性最佳实践
3.3.3 复用但是不继承
3.4 案例完善:Romulus系统结构
3.4.1 系统定位
3.4.2 Romulus系统Java实现结构
3.4.3 系统架构
3.4.4 系统实施
3.5 本章小结
第4章 异常处理
4.1 异常和异常处理
4.1.1 异常
4.1.2 Java中的异常处理概述
4.1.3 Java异常处理的特点
4.2 Java异常处理基本技巧
4.2.1 异常的引发
4.2.2 异常的传播
4.2.3 异常的处理
4.3 案例完善:Romulus中的异常处理示例
4.4 本章小结
第5章 多线程处理
5.1 多线程技术概览
5.1.1 Java中的多线程
5.1.2 多线程技术的基本使用
5.1.3 多线程的状态处理
5.2 多线程使用技巧
5.2.1 同步问题
5.2.2 线程调度
5.2.3 生产者/消费者问题
5.3 线程组
5.4 Java线程/内存模型
5.4.1 Java内存模型
5.4.2 DCL失效
5.4.3 Java线程同步增强包
5.5 案例完善:Romulus系统中的多线程处理
5.6 本章小结
第6章 Java数据结构
6.1 基本数据结构简介
6.1.1 数据结构在面向对象软件开发过程中的意义
6.1.2 数据结构的分类和简介
6.1.3 数据结构的使用
6.2 Java对象集合架构
6.2.1 Java对象集合架构简介
6.2.2 Java对象集合架构的构成
6.2.3 Java对象集合架构的使用
6.3 Java对象集合架构的进一步使用
6.3.1 保存任意多个对象
6.3.2 利用现成的方法简化工作
6.3.3 构建自己的实现
6.4 案例完善
6.4.1 Romulus中的对象集合
6.4.2 Romulus中的排序
6.4.3 Romulus中的随机对象集合
6.5 实现中必须注意的方面
6.5.1 同一性的问题
6.5.2 排序的问题
6.6 本章小结
第7章 JDBC
7.1 JDBC基础
7.1.1 JDBC体系
7.1.2 JDBC驱动程序的选择
7.1.3 遵循JDBC标准的重要性
7.1.4 测定JDBC的性能
7.2 JDBC应用程序设计
7.2.1 传统的两层结构的Java应用程序
7.2.2 三层结构的Java应用程序(服务器端接口方法)
7.3 JDBC编程基础
7.3.1 JDBC基础类
7.3.2 JDBC编程基本步骤
7.3.3 实例:动态的SQLSelect程序
7.4 数据库的配置
7.4.1 Access数据库配置
7.4.2 Oracle数据库配置
7.5 案例完善
7.5.1 Romulus数据库操作
7.5.2 Romulus系统数据库方案综述
7.6 松耦合--理想的设计
7.7 本章小结
第8章 输入输出
8.1 数据流技术和JavaI/O
8.1.1 数据流技术简介
8.1.2 JavaI/O的基本体系
8.2 二进制流的处理
8.2.1 二进制输入输出技术基础
8.2.2 二进制底层输入输出技术
8.2.3 二进制高层输入输出技术
8.2.4 二进制应用级输入输出技术
8.3 案例完善:Romulus数据传输
8.4 字符流的处理
8.4.1 字符输入输出技术基础
8.4.2 底层字符流输入输出技术
8.4.3 高层字符流输入输出技术
8.4.4 应用级字符流输入输出技术
8.5 案例完善:Romulus中的输入和输出架构概述
8.5.1 底层二进制输入输出流
8.5.2 对象输入输出流
8.5.3 字符输入输出流
8.5.4 两个原则
8.6 本章小结
第9章 网络编程
9.1 Java网络技术概览
9.1.1 网络技术基本概念
9.1.2 Java网络技术架构
9.2 Java中的网络处理技术
9.2.1 网络寻址技术
9.2.2 基于TCP协议的网络应用服务器和客户端的开发
9.2.3 基于UDP协议的网络应用开发
9.2.4 网络资源的使用技术
9.3 案例完善:Romulus系统网络通信
9.3.1 Romulus网络应用技术分析
9.3.2 TCP网络应用协议
9.3.3 TCP网络应用客户端
9.3.4 TCP网络应用服务器
9.4 本章小结
第10章 用户界面
10.1 J2SEGUI架构的历史形成
10.1.1 AWT1.0
10.1.2 AWT1.1
10.1.3 SWING
10.1.4 Java2平台GUI功能模块
10.2 SWING方案综述
10.2.1 SWING界面构成
10.2.2 SWING类结构
10.2.3 SWING界面的布局
10.2.4 SWING界面事件处理
10.2.5 SWING界面事件处理最佳实践
10.2.6 SWING中的绘图
10.2.7 多线程
10.2.8 其他特性
10.2.9 Romulus中的用户界面中使用到的特性
10.3 案例完善:流程化用户界面和Romulus考试客户端
10.3.1 流程化用户界面
10.3.2 Romulus考试客户端设计
10.3.3 登录界面(简单信息输入界面)
10.3.4 试题展示界面(定制的信息展现和交互处理)
10.3.5 批改和统计结果界面(中间流程界面)
10.3.6 考试应用客户端(主控程序)
10.4 案例完善:一站式用户界面和Romulus管理客户端
10.4.1 一站式用户界面
10.4.2 Romulus管理客户端设计
10.4.3 考试管理客户端主程序:RomulusManagerClientFrame
10.4.4 考生管理和考试分配管理:ManagerPanel
10.4.5 考试数据设计和管理:TestManagerPanel
10.4.6 考试结果数据查询:ResultPanel
10.4.7 考试结果数据管理:ReportPanel
10.5 本章小结
第11章 JAR技术
11.1 JAR技术概要
11.2 JAR的基本使用
11.2.1 JAR工具
11.2.2 JAR配置文件
11.2.3 JAR文件的运行
11.3 案例完善:Romulus中的JAR实例
11.3.1 打包
11.3.2 查看
11.3.3 配置
11.3.4 调试
11.3.5 更新
11.3.6 二度调试
11.3.7 再次更新
11.4 本章小结
第12章 JavaXML
12.1 XML简介
12.1.1 XML的存在和应用
12.1.2 XML的基础知识
12.2 DTD基础知识
12.3 案例完善:romulus.dtd
12.4 使用JAXP处理XML
12.4.1 XML解析器
12.4.2 JAXP使用简介
12.5 JAXPSAX处理方式
12.5.1 SAX事件监听处理器
12.5.2 SAX事件处理
12.6 JAXPDOM处理方式
12.6.1 DOM节点
12.6.2 基于DOM的处理
12.7 案例完善:Romulus处 XML
12.8 本章小结
第13章 JNI
13.1 JNI基本体系
13.2 在Java中编写本地方法
13.2.1 第零步:准备运行环境
13.2.2 第一步, 编写Java代码
13.2.3 第二步, 将Java代码编译成类文件
13.2.4 第三步:产生JNI风格的头文件
13.2.5 第四步:实现本地方法
13.2.6 第五步:创建共享库
13.2.7 第六步:运行Java程序
13.3 复杂本地方法的实现
13.3.1 深入了解本地方法和实现函数命名
13.3.2 参数.返回值和对象
13.3.3 访问和处理Java变量和对象
13.4 访问Java方法
13.5 访问静态元素
13.5.1 访问静态域
13.5.2 访问静态方法
13.6 本地方法的异常处理
13.7 本地化的意义
13.8 本章小结
附录A 案例发布.配置和运行
附录B Java程序编码规范
参考文献