第1章 Java开发环境基础 1
1.1案例场景 2
用Java问候世界 2
我们现在能做的 2
1.2 Java语言概述 3
Java的家谱 3
Java语言的特点 3
Java虚拟机 5
1.3 Java开发工具包JDK 5
JDK的下载与安装 5
Java环境变量的配置 7
1.4 Java开发工具Eclipse 9
Eclipse概述 9
Eclipse下载和安装 10
Eclipse工作台 12
Eclipse基本操作 13
1.5回到案例场景 19
基本思路 19
代码演练 20
1.6本章小结与习题 20
重点回顾 20
课后练习 20
第2章 Java语言基础 21
2.1案例场景 22
摄氏温度和华氏温度随心换 22
我们现在能做的 22
2.2标识符、注释和分隔符 24
标识符 24
注释 25
分隔符 26
2.3变量和常量 27
常量 27
变量 27
2.4基本数据类型 29
整型 29
字符型 29
浮点型 30
逻辑型 31
2.5数据类型之间的转换 31
自动类型转换 31
强制类型转换 32
2.6运算符与表达式 33
运算符 33
表达式 38
运算符的优先级 39
2.7 Java语言的编码规范 40
为什么要制订编码规范 40
Java代码编写规则 40
2.8回到案例场景 41
基本思路 41
代码演练 41
2.9本章小结与习题 43
重点回顾 43
课后练习 44
第3章 程序控制语句 45
3.1案例场景 46
开始累积你的航空里程吧 46
我们现在能做的 46
3.2选择语句 47
if语句 47
switch语句 52
3.3循环语句 54
for循环语句 54
while循环语句 57
do-while循环语句 58
循环嵌套 59
3.4 break和continue语句 60
break语句 60
continue语句 62
3.5回到案例场景 63
基本思路 63
代码演练 64
3.6本章小结与习题 66
重点回顾 66
课后练习 66
第4章 数组 69
4.1案例场景 70
红福娃连锁店的订单 70
我们现在能做的 70
4.2一维数组 71
数组的声明 71
数组的创建和赋值 72
数组元素的访问 73
4.3多维数组 74
4.4数组的操作 76
增强的for循环 76
数组的各种处理 77
4.5回到案例场景 79
基本思路 79
代码演练 81
4.6本章小结与习题 82
重点回顾 82
课后练习 82
第5章 面向对象程序设计 83
5.1案例场景 84
描述一下选课系统中的业务和对象 84
我们现在能做的 84
5.2基本概念 85
对象 85
类 86
封装 86
继承 87
多态性 87
5.3包 88
包的定义 88
包的层次结构 89
包的使用 90
5.4类的创建 90
使用class定义类 90
类修饰符 91
成员变量和方法 92
5.5方法 93
定义方法 93
局部变量 94
实例方法和类方法 95
方法重载 96
构造方法 96
类的主方法 97
5.6在Eclipse中创建类 99
5.7使用对象 101
创建对象 101
调用方法 101
将对象作为返回值 102
对象的比较 102
Object对象 103
基本数据类型对象 104
instanceof操作符 104
null和this关键字 104
值传递和引用传递 105
5.8访问控制 106
权限修饰符 106
类成员的访问 106
5.9继承 108
超类和子类 108
继承的语法形式 108
方法覆盖 109
super关键字 110
5.10嵌套类和内部类 111
5.11抽象类 112
5.12接口 114
理解接口 114
接口的定义 114
接口的实现 115
接口的继承 115
嵌套接口 116
5.13向上向下转型 116
向上转型 116
向下转型 119
5.14反射 120
类加载原理 121
反射概述 121
获取类信息 122
访问构造方法 123
访问成员变量 125
访问成员方法 126
动态处理数组 127
5.15 自动装箱和拆箱 129
5.16枚举、泛型和注释 130
枚举(Enum) 130
泛型(Generic) 131
注释(Annotation) 134
5.17回到案例场景 139
基本思路 139
代码演练 142
5.18本章小结与习题 147
重点回顾 147
课后练习 147
第6章 字符串处理 149
6.1案例场景 150
顾客的意见很重要 150
我们现在能做的 150
6.2字符串类 151
String类 152
字符串数组 152
6.3字符串操作 153
获取字符串长度 153
获取指定字符 153
获取字符数组 153
比较字符串 154
查找字符串 154
获取子串 155
替换字符串 155
分隔字符串 156
转换大小写 158
判断前缀和后缀 158
连接字符串 158
连接其他类型数据 159
6.4字符串缓存类 159
StringBuffer的创建 160
StringBuffer的常用操作 160
6.5字符串标记类 163
StringTokenizer的创建 163
StringTokenizer的常用操作 164
6.6正则表达式 165
基础知识 165
模式Pattern 165
模式匹配Matcher 166
应用示例 167
6.7回到案例场景 169
基本思路 169
代码演练 170
6.8本章小结与习题 172
重点回顾 172
课后练习 172
第7章 异常处理 173
7.1案例场景 174
不好意思,程序罢工了 174
我们现在能做的 174
7.2异常处理基础 176
异常的概念 176
异常处理机制 176
Exception异常类 177
Java常见异常 178
7.3管理异常 179
捕获异常 180
throws抛出异常 180
throw抛出异常 182
finally语句 183
7.4断言 185
理解断言 185
断言的启用和禁用 185
断言的应用 186
7.5回到案例场景 187
基本思路 187
代码演练 188
7.6本章小结与习题 190
重点回顾 190
课后练习 191
第8章 Java开发工具包 193
8.1案例场景 194
我们来玩个游戏吧 194
我们现在能做的 194
8.2 java.util包概述 195
8.3集合框架 195
8.4 Collection接口 196
8.5 List接口 197
List简介 197
ArrayList类 197
LinkedList类 199
Vector类 201
Stack类 203
8.6 Queue接口 204
Queue简介 205
Deque接口和ArrayDeque类 205
8.7 Set接口 207
SortedSet和NavigableSet接口 208
TreeSet类 208
HashSet类 210
LinkedHashSet类 211
8.8 Iterator和ListIterator接口 211
Iterator接口 212
ListIterator接口 212
8.9 Enumeration接口 213
8.10 Map接口 213
Map简介 213
HashMap类 215
LinkedHashMap类 216
SortedMap和NavigableMap接口 217
TreeMap类 218
8.11格式化输入/输出 219
格式化输入Scanner 219
格式化输出Formatter 221
8.12国际化处理 224
国际化问题 224
Locale 225
ResourceBundle 225
应用示例 227
解决中文乱码问题 228
8.13拾遗补缺 229
集合操作类Collections 229
日期和时间 231
Properties属性集 233
计时器 235
8.14回到案例场景 237
基本思路 237
代码演练 238
8.15 本章小结与习题 239
重点回顾 239
课后练习 240
第9章 I/O输入/输出流 241
9.1案例场景 242
复制我的情书 242
我们现在能做的 242
9.2数据流的基本概念 243
数据流的理解 243
Java的标准数据流 244
9.3 File类 245
创建文件 246
删除文件 246
获取文件属性 247
目录操作 247
9.4输入/输出流 248
字节流 248
字符流 249
缓冲输入/输出流 251
数据输入/输出流 251
9.5压缩输入/输出流 253
ZipInputStream类 253
ZipOutputStream类 254
ZipEntry类 254
创建压缩文件 255
解压缩文件 256
9.6回到案例场景 258
基本思路 258
代码演练 258
9.7本章小结与习题 259
重点回顾 259
课后练习 260
第10章 图形界面编程 263
10.1案例场景 264
我能登录吗? 264
我们现在能做的 264
10.2 AWT和Swing概述 265
10.3 AWT常用控件 265
窗口Frame 265
标签Label 266
按钮Button 267
复选框Checkbox和CheckboxGroup 267
面板Panel 267
文本框TextField和TextArea 269
选项框Choice和列表List 270
滚动条Scrollbar和滚动面板ScrollPane 271
画布Canvas 272
菜单MenuBar、Menu和MenuItem 273
10.4常用布局管理器 276
FlowLayout布局 276
CardLayout布局 278
BorderLayout布局 280
GridLayout布局 281
null布局 281
BoxLayout布局 282
10.5事件处理 284
理解事件 284
事件监听器 285
常见事件处理 285
事件适配器 287
10.6 Swing窗口 288
窗口JFrame 288
标准对话框JOptionPane 289
颜色选择器JColorChooser 292
文件选择器JFileChooser 292
10.7 Swing容器 294
面板JPanel 294
标签化面板JTabbedPane 295
拆分面板JSplitPane 297
滚动面板JScrollPane 297
工具栏JToolBar 298
桌面面板和内部框架 299
10.8 Swing控件 300
标签JLabel 301
文本控件 301
按钮控件 304
滚动条JScrollBar和滑块JSlider 307
JComboBox和JList控件 309
菜单控件 312
10.9进度条 315
JProgressBar 315
ProgressMonitor 316
SwingWorker 317
应用示例 317
10.10树JTree 320
创建树 320
遍历树 322
处理节点事件 323
修改树 324
10.11表格JTable 327
创建表格 327
定制表格 328
使用表格模型 330
排序器和过滤器 331
渲染器 332
编辑器 332
应用示例 333
10.12回到案例场景 341
基本思路 341
代码演练 342
10.13本章小结与习题 345
重点回顾 345
课后练习 346
第11章 线程 347
11.1案例场景 348
动态的问候 348
我们现在能做的 348
11.2线程概述 349
线程是什么 350
线程的生命周期 350
线程的状态 350
11.3线程的创建 351
继承Thread类 351
实现Runnable接口 352
11.4线程调度与优先级 353
线程调度 353
线程优先级 353
11.5线程控制技术 355
共享数据的线程互斥 355
传送数据的线程同步 356
11.6线程池 358
11.7回到案例场景 359
基本思路 359
代码演练 360
11.8本章小结与习题 361
重点回顾 362
课后练习 362
第12章 Java网络编程 363
12.1案例场景 364
对聊一下如何 364
我们现在能做的 364
12.2基本概念 365
URL 366
协议 366
端口 367
Socket通信机制 367
12.3 URL类和InetAddress类 368
12.4 Socket编程 369
基于TCP协议的Socket编程 369
基于UDP协议的Socket编程 371
支持多客户连接的Socket编程 375
12.5轻量级HttpServer 377
12.6回到案例场景 379
基本思路 379
代码演练 380
12.7本章小结与习题 383
重点回顾 383
课后练习 384
第13章 数据库处理 385
13.1案例场景 386
查一下我及格了没有 386
我们现在能做的 386
13.2数据库基础 388
什么是数据库 388
数据库管理系统 389
13.3在Java中连接数据库 389
数据库访问的总体结构 389
连接数据库的两种方式 390
JDBC结构模型 390
Java DB数据库概览 391
在项目中配置JDBC 394
一个访问数据库的示例 394
13.4 Java DB基础 395
运行模式 396
ij命令行工具 397
数据库结构形式 398
基本数据类型 399
内置函数 399
13.5 SQL语句 400
CREATE TABLE语句 400
INSERT语句 401
SELECT语句 401
UPDATE语句 402
DELETE语句 402
13.6 JDBC常用接口和类 403
驱动Driver 403
驱动管理器DriverManager 404
数据库连接Connection 405
会话声明Statement 407
预编译PreparedStatement 409
结果集ResultSet 410
13.7数据库高级应用 412
创建存储过程 412
调用存储过程CallableStatement 413
收集结果集元数据ResultSetMetaData 414
使用数据源DataSource 414
创建连接池数据源Cl ientConnectionPoolDataSource 415
获取池化连接Pool edConnection 416
事务处理 417
13.8回到案例场景 417
基本思路 417
代码演练 420
13.9本章小结与习题 429
重点回顾 429
课后练习 429
第14章 XML编程 431
14.1案例场景 432
情人节卖了多少鲜花 432
我们现在能做的 432
14.2 XML简介 438
XML的家谱 438
XML的目标 438
初识XML 439
XML的优点 440
14.3 XML基础 440
文档对象模型 440
XML解析器 441
文档结构 441
XML声明 442
元素 442
注释 443
字符引用 444
处理指令 444
良构的XML和有效的XML 446
14.4文档类型声明和DTD 447
文档类型声明 447
DTD 448
14.5使用DOM存取XML 453
DOM简介 453
XML文档构建流程 454
javax.xml.parsers包 455
org.w3c.dom包 456
javax.xml.transform.dom包 459
javax.xml.transform.stream包 459
javax.xml.transform包 460
创建XML文档 462
解决中文乱码问题 463
解析XML文档 464
14.6使用StAX处理XML 466
StAX简介 466
XMLStreamConstants接口 467
XMLInputFactory类 467
XMLOutputFactory类 468
XMLStreamReader接口 468
XMLStreamWriter接口 469
创建XML文档 469
解析XML文档 471
14.7使用DOM4J操作XML 472
下载配置DOM4J 473
DOM4J常用接口和类 473
创建XML文档 476
读取XML文档 478
14.8回到案例场景 479
基本思路 480
代码演练 480
14.9本章小结与习题 482
重点回顾 482
课后练习 483
第15章 JUnit单元测试 485
15.1案例场景 486
你的E-mail地址正确吗? 486
我们现在能做的 486
15.2软件测试概述 487
15.3 JUnit简介 488
15.4 JUnit安装配置和使用 488
JUnit下载安装 489
JUnit配置 489
在Eclipse中配置使用JUnit 490
15.5 JUnit常用类 492
Test注释类 492
Ignore注释类 493
Before和After注释类 493
Assert断言类 494
Suite套件运行器类 495
Suite.SuiteClasses套件注释类 495
JUnitCore内核类 496
Result结果类 497
15.6回到案例场景 498
基本思路 498
代码演练 500
15.7本章小结与习题 502
重点回顾 502
课后练习 502
第16章 资源构建工具Ant 503
16.1案例场景 504
贴心的邮件提醒托盘程序 504
我们现在能做的 505
16.2 Ant概述 509
16.3 Ant安装配置和运行 509
Ant安装 509
配置环境变量 510
运行Ant 510
16.4构建文件build.xml 511
创建项目<Project> 511
定义目标<target> 512
设置属性<Property> 513
定义任务<task> 513
创建文件夹<mkdir> 514
生成JAR文件<jar> 514
编译源文件<javac> 514
执行Java程序<java> 515
输出消息<echo> 515
删除文件<delete> 515
复制文件<copy> 515
使用文件组<FileSet>和<ZipFileSet> 516
执行外部命令<exec> 516
创建压缩文件<zip> 517
解压<unzip> 517
创建build.xml 518
16.5回到案例场景 518
基本思路 518
代码演练 519
16.6本章小结与习题 521
重点回顾 521
课后练习 521