第一篇 基础篇 1
第1章 Java SE概述 1
1.1 Java SE的产生与发展 2
1.1.1 Java技术的产生 2
1.1.2 Java SE的发展 2
1.2 Java SE的特点 3
1.3 搭建Java SE简易开发环境 5
1.3.1 下载JDK 6.0 5
1.3.2 安装JDK 6.0 5
1.3.3 Windows环境下JDK 6.0的配置 7
1.3.4 JDK 6.0的新特性 9
1.4 Java SE程序开发过程 10
1.4.1 Java SE 6.0程序的基本结构 10
1.4.2 编写Java SE 6.0程序 11
1.4.3 编译和运行Java SE 6.0程序 12
1.4.4 使用Java SE 6.0 API文档 12
1.5 思考与练习 14
第2章 Java SE 6.0基本语法 15
2.1 Java符号 16
2.1.1 标识符 16
2.1.2 关键字 16
2.1.3 运算符和分隔符 17
2.1.4 注释 17
2.2 数据类型 18
2.2.1 基本类型 19
2.2.2 引用类型 19
2.3 常量与变量 19
2.3.1 常量的概念与使用 19
2.3.2 变量的声明与引用 21
2.3.3 变量的作用域 26
2.4 运算符 30
2.4.1 算术运算符 30
2.4.2 关系运算符 31
2.4.3 赋值运算符 32
2.4.4 逻辑运算符 33
2.4.5 条件运算符 34
2.4.6 位运算符 35
2.4.7 运算符的优先级 36
2.4.8 语句和表达式 37
2.5 数据类型间的转换 37
2.5.1 自动类型转换 38
2.5.2 强制类型转换 39
2.6 数组与字符串 40
2.6.1 一维数组 40
2.6.2 多维数组 45
2.6.3 字符串 49
2.7 基本数据类型与封装类 58
2.7.1 构造方法 58
2.7.2 常用方法 61
2.8 思考与练习 62
第3章 Java SE 6.0流程控制语句 63
3.1 三种控制结构 64
3.2 分支语句 64
3.2.1 简单if语句 64
3.2.2 if…else语句 65
3.2.3 多层嵌套if…else语句 67
3.2.4 判断中的“短路”现象 69
3.2.5 使用if语句和三目运算符判定是否是闰年 71
3.2.6 switch多分支语句 72
3.3 循环语句 75
3.3.1 while语句 75
3.3.2 do…while语句 76
3.3.3 for语句 78
3.3.4 多种循环嵌套 80
3.3.5 使用循环语句计算水仙花数 81
3.4 跳转语句 82
3.4.1 break语句 82
3.4.2 continue语句 84
3.4.3 return语句 87
3.4.4 goto语句 87
3.5 思考与练习 88
第4章 Eclipse集成开发环境 89
4.1 Eclipse的概念和特点 90
4.1.1 Eclipse的概念 90
4.1.2 Eclipse的主要特点 90
4.2 Eclipse的安装与配置 91
4.2.1 Eclipse的下载 91
4.2.2 Eclipse的安装 91
4.2.3 Eclipse的启动 92
4.2.4 Eclipse多国语言包的安装 93
4.3 Eclipse平台 96
4.3.1 Eclipse平台技术概述 96
4.3.2 Eclipse透视图 99
4.3.3 Eclipse视图 101
4.3.4 Eclipse编辑器 101
4.4 创建并运行Java项目 103
4.4.1 创建Java项目 104
4.4.2 创建Java类 105
4.4.3 编写Java源代码 106
4.4.4 Java项目的运行 112
4.4.5 Java项目的调试 113
4.5 Eclipse中的项目管理 118
4.5.1 导入包 118
4.5.2 导入Java类 118
4.5.3 导入Java项目 119
4.5.4 导出Java项目 120
4.6 思考与练习 121
第二篇 任务驱动篇 123
第5章 Java SE的类和接口 123
5.1 类和对象 124
5.1.1 Java类定义 124
5.1.2 类的成员变量 125
5.1.3 类的成员方法 128
5.1.4 类的构造方法 135
5.1.5 对象的创建和使用 136
5.1.6 类的封装 139
5.1.7 包的创建和使用 143
5.1.8 任务:创建用户类User 146
5.2 类的继承 147
5.2.1 类的继承概述 147
5.2.2 方法的重载和覆盖 151
5.2.3 抽象类和最终类 156
5.2.4 任务:创建管理员类Admin 160
5.3 接口 160
5.3.1 定义接口 161
5.3.2 实现接口 161
5.3.3 任务:创建图书的接口 166
5.4 项目实践 166
5.4.1 定义图书类 166
5.4.2 定义读者类 169
5.5 思考与练习 171
第6章 Java SE 6.0的图形用户界面 173
6.1 简单控件和流式布局 174
6.1.1 JLabel(标签)组件 174
6.1.2 JTextField(文本框)组件 176
6.1.3 JPasswordField(密码框)组件 177
6.1.4 JButton(按钮)组件 179
6.1.5 JPanel(面板)组件 180
6.1.6 流式布局管理器 183
6.1.7 任务:创建管理员登录界面 185
6.2 选择框和网格布局 187
6.2.1 JComboBox(选择框)组件 187
6.2.2 JList(列表框)组件 188
6.2.3 JRadioButton(单选按钮)和JCheckBox(复选框)组件 189
6.2.4 JOptionPane(弹出对话框)组件 190
6.2.5 网格布局管理器 194
6.2.6 任务:创建计算器界面 196
6.3 Java SE中事件处理模型和BorderLayout布局 201
6.3.1 JTable(表格)组件 201
6.3.2 JScrollPane(滚动面板)组件 202
6.3.3 Vector(向量)组件 203
6.3.4 Java SE中事件处理模型 204
6.3.5 BorderLayout布局管理器 222
6.3.6 任务:创建图书管理界面 223
6.4 高级控件和卡式布局 228
6.4.1 JMenu(菜单)组件、JMenuItem(菜单选项)组件和JMenuBar(菜单栏)组件 228
6.4.2 JSplitPane(分割面板)组件 231
6.4.3 JTree(树状结构)组件 233
6.4.4 卡布局管理器 236
6.4.5 JFrame窗体 239
6.4.6 任务:创建系统主界面 240
6.5 文本域、对话框和BoxLayout布局 245
6.5.1 JTextArea(文本域)组件 245
6.5.2 FileDialog(文件对话框)组件 248
6.5.3 BoxLayout布局 248
6.5.4 任务:创建记事本主界面 250
6.6 项目实践 252
6.6.1 创建管理用户界面 252
6.6.2 创建添加、修改、删除用户界面 255
6.7 思考与练习 266
第7章 Java SE 6.0的输入输出流 267
7.1 Java SE的输入输出类库 268
7.1.1 流概述 268
7.1.2 Java SE的输入输出流类 268
7.2 Java SE的输入流 271
7.2.1 Java SE的I/O处理方式 271
7.2.2 标准输入 274
7.2.3 文件的字节输入流 275
7.2.4 文件的字符输入流 281
7.2.5 I/O异常处理 283
7.2.6 任务:打开记事本文件 288
7.3 Java SE的输出流 290
7.3.1 标准输出流 290
7.3.2 文件的字节输出流 291
7.3.3 文件的字符输出流 293
7.3.4 任务:保存记事本文件 296
7.4 Java SE的文件类 297
7.4.1 文件类 297
7.4.2 复制和删除文件 300
7.4.3 复制和删除文件夹 303
7.4.4 任务:管理记事本文件 305
7.5 项目实践 310
7.5.1 通过NIO操作文件 310
7.5.2 读写二机制文件 311
7.6 思考与练习 312
第8章 Java SE 6.0的网络应用 313
8.1 Java SE Socket服务器端编程 314
8.1.1 Java SE的Socket编程 314
8.1.2 创建Socket服务器端 315
8.1.3 Socket异常处理 316
8.1.4 任务:创建图书管理系统服务器端 317
8.2 Java SE Socket客户端编程 322
8.2.1 创建Socket客户端 322
8.2.2 Socket通信中的I/O流 322
8.2.3 任务:创建图书管理系统客户端 324
8.3 Java SE的多线程应用 330
8.3.1 Java SE中的多线程 330
8.3.2 线程的创建 331
8.3.3 线程的控制 332
8.3.4 线程的同步 334
8.3.5 任务:实现多线程的图书管理系统 339
8.4 项目实践——实现NIO机制的服务器 347
8.5 思考与练习 355
第9章 Java SE 6.0数据库编程 357
9.1 JDBC编程基础 358
9.1.1 Java SE的JDBC编程 358
9.1.2 建立数据库连接 359
9.1.3 进行数据库查询 365
9.1.4 任务:实现管理员登录的数据库编程 368
9.2 JDBC高级编程 372
9.2.1 查询图书信息 372
9.2.2 添加图书信息 374
9.2.3 修改图书信息 375
9.2.4 删除图书信息 375
9.2.5 JDBC中的事务处理 376
9.2.6 任务:实现图书管理的数据库编程 379
9.3 项目实践——管理系统中的读者信息 394
9.4 思考与练习 403
第三篇 综合案例编程篇 405
第10章 图书管理系统 405
10.1 系统分析 406
10.1.1 需求分析 406
10.1.2 可行性分析 406
10.1.3 开发及运行环境分析 406
10.2 系统设计 407
10.2.1 系统流程 407
10.2.2 模块功能结构分析 408
10.3 数据库设计 409
10.3.1 E-R图 409
10.3.2 数据表结构分析 410
10.4 连接数据库模块 411
10.5 管理员登录模块 413
10.5.1 管理员登录界面 414
10.5.2 管理员登录技术实现 414
10.6 系统主界面模块 417
10.6.1 系统主界面 418
10.6.2 系统主界面的技术实现 418
10.7 用户管理模块 424
10.7.1 用户管理模块的客户端 424
10.7.2 用户管理模块的服务器端 447
10.8 图书管理模块 454
10.8.1 图书管理模块的客户端 454
10.8.2 图书管理模块的服务器端 477
10.9 图书借阅模块 484
10.9.1 图书借阅模块的客户端 484
10.9.2 图书借阅模块的服务器端 497
10.10 思考与练习 504