第1章 集合框架和泛型 1
本章任务 2
任务1 新闻标题查询功能 2
1.1.1 集合概述 2
1.1.2 List接口 3
1.1.3 Set接口 9
1.1.4 Iterator接口 11
1.1.5 Map接口 12
1.1.6 使用Collections类操作集合 15
任务2 改进新闻标题查询功能 19
1.2.1 泛型介绍 19
1.2.2 深入理解泛型 21
本章总结 25
本章练习 26
第2章 实用类 29
本章任务 30
任务1 使用java.lang包中的常用类 30
2.1.1 Java API介绍 30
2.1.2 枚举 31
2.1.3 包装类 33
2.1.4 使用Math类实现幸运抽奖 35
任务2 在Java中操作字符串 37
2.2.1 使用String类操作字符串 37
2.2.2 StringBuffer类和StringBuilder类 43
任务3 使用java.util包中的常用类 46
2.3.1 日期时间类 46
2.3.2 Random类 48
本章总结 50
本章练习 51
第3章 输入/输出和反射 53
本章任务 54
任务1 使用I/O操作文件 54
3.1.1 使用File类操作文件或目录属性 54
3.1.2 Java的流 57
3.1.3 读写文本文件 59
3.1.4 读写二进制文件 65
3.1.5 重定向标准I/O 67
任务2 在Java中读写对象信息 68
3.2.1 序列化概述 68
3.2.2 使用序列化保存对象信息 68
3.2.3 使用反序列化获取对象信息 70
3.2.4 对象引用的序列化 72
任务3 在Java中使用反射机制 72
3.3.1 反射概述 72
3.3.2 反射的应用 74
本章总结 82
本章练习 83
第4章 注解和多线程 85
本章任务 86
任务1 使用注解描述程序代码 87
4.1.1 注解概述 87
4.1.2 注解分类 88
4.1.3 读取注解信息 91
任务2 使用多线程输出1~100的整数 92
4.2.1 线程概述 92
4.2.2 在Java中实现多线程 93
4.2.3 线程的状态 96
4.2.4 线程调度 97
任务3 使用线程同步实现银行取款 103
4.3.1 线程同步的必要性 103
4.3.2 线程同步的实现 105
任务4 通过线程间通信解决生产者消费者问题 107
4.4.1 线程间通信的必要性 108
4.4.2 在Java中实现线程间通信 108
本章总结 112
本章练习 113
第5章 网络编程技术 115
本章任务 116
任务1 查看本机的IP地址 117
5.1.1 网络概述 117
5.1.2 IP地址介绍 120
5.1.3 网络相关的重要概念及作用 124
任务2 使用基于TCP协议的Socket编程模拟实现用户登录功能 126
5.2.1 Socket简介 126
5.2.2 基于TCP协议的Socket编程 127
5.2.3 使用Socket编程实现用户登录 129
任务3 使用基于UDP协议的Socket 编程模拟实现客户咨询功能 134
5.3.1 基于UDP协议的Socket编程 134
5.3.2 使用Socket编程实现客户咨询 136
任务4 搭建JUnit测试框架 137
5.4.1 软件测试概述 137
5.4.2 JUnit测试框架 138
5.4.3 JUnit 3.x测试框架 140
5.4.4 JUnit 4.x测试框架 141
5.4.5 测试套件 143
本章总结 143
本章练习 143
第6章 XML技术 147
本章任务 148
任务1 使用XML存储数据 148
6.1.1 XML简介 148
6.1.2 XML文档结构 149
6.1.3 XML优势 151
6.1.4 在XML中使用命名空间 152
任务2 验证XML文档 153
6.2.1 使用DTD验证XML文档 153
6.2.2 使用Schema验证XML文档 156
任务3 使用DOM解析XM L 159
6.3.1 解析XML概述 160
6.3.2 使用DOM读取XML数据 160
6.3.3 使用DOM维护XML数据 165
任务4 使用DOM4J解析XML 168
6.4.1 DOM4J概述 168
6.4.2 使用DOM4J操作XML数据 169
本章总结 174
本章练习 174
第7章 综合练习——电影院售票系统 177
本章任务 178
任务完成“电影院售票系统”综合练习 178
7.1.1 项目需求 178
7.1.2 项目环境准备 179
7.1.3 项目覆盖的技能点 180
7.1.4 难点分析 180
7.1.5 项目实现思路 180
本章总结 183
本章练习 183