第1章 全面了解Java语言 1
1.1 Java的起源和发展 2
1.2 Java语言简介 2
1.2.1 Java语言的特点 2
1.2.2 Java的运行机制 3
1.2.3 Java的应用领域 4
1.3 搭建Java开发环境 6
1.3.1 JDK简介 6
1.3.2 实战——安装JDK 7
1.3.3 实战——配置JDK 10
1.3.4 实战——安装MyEclipse 11
1.4 实战——创建第一个Java程序 13
1.4.1 编写源程序 14
1.4.2 编译和运行 15
1.4.3 Java程序结构分析 15
1.5 实战——使用MyEclipse创建Java程序 19
1.6 调试程序 20
1.7 Java程序编码规范 23
1.8 本章习题 26
第2章 Java基础语法入门 29
2.1 变量 30
2.1.1 声明变量 30
2.1.2 初始化变量 30
2.1.3 作用域范围 31
2.2 常量 33
2.3 数据类型 34
2.3.1 数据类型的分类 34
2.3.2 整数类型 35
2.3.3 浮点类型 36
2.3.4 布尔类型 38
2.3.5 字符类型 38
2.4 运算符 39
2.4.1 算术运算符 39
2.4.2 比较运算符 40
2.4.3 逻辑运算符 41
2.4.4 赋值运算符 42
2.4.5 条件运算符 44
2.4.6 自增和自减运算符 44
2.4.7 位运算符 45
2.4.8 运算符的优先级别 47
2.5 数据类型转换 48
2.5.1 隐式转换 48
2.5.2 显式转换 49
2.6 实战——把整数转换为二进制数 50
2.7 本章习题 51
第3章 流程控制语句 53
3.1 顺序结构 54
3.1.1 语句编写方式 54
3.1.2 表达式语句 54
3.1.3 空语句 55
3.1.4 复合语句 55
3.2 if条件语句 56
3.2.1 单条件if 56
3.2.2 双条件if 58
3.2.3 多条件if 60
3.2.4 if嵌套 62
3.3 switch条件语句 65
3.3.1 switch语句的格式 65
3.3.2 实战——根据出生日期判断星座 67
3.4 循环语句 68
3.4.1 while语句 69
3.4.2 do-while语句 70
3.4.3 for语句 72
3.4.4 实战——九九乘法口诀表 76
3.4.5 foreach语句 76
3.5 跳转语句 77
3.5.1 return语句 77
3.5.2 break语句 78
3.5.3 实战——break实现goto功能 79
3.5.4 continue语句 80
3.6 本章习题 81
第4章 面向对象编程基础 85
4.1 面向对象特点 86
4.1.1 什么是对象 86
4.1.2 封装 86
4.1.3 继承 87
4.1.4 多态 87
4.2 类概述 87
4.2.1 类的概念 88
4.2.2 类和对象的区别 88
4.2.3 类是对象的类型 89
4.3 使用类 89
4.3.1 定义类 89
4.3.2 属性 91
4.3.3 实战——创建员工类 92
4.3.4 方法 93
4.3.5 this关键字 96
4.4 对象 97
4.4.1 对象的创建 98
4.4.2 访问对象的属性和行为 100
4.4.3 实战——用户修改密码 100
4.4.4 对象的销毁 102
4.5 特殊方法 103
4.5.1 main()方法 103
4.5.2 方法的可变参数 105
4.5.3 构造方法 106
4.5.4 析构方法 109
4.6 作用域修饰符 111
4.6.1 访问控制修饰符 111
4.6.2 static静态修饰符 113
4.6.3 final修饰符 117
4.7 本章习题 118
第5章 面向对象高级实现 121
5.1 继承 122
5.1.1 继承语法 122
5.1.2 Java的继承规则 123
5.1.3 实战——实现学生类和教师类 124
5.1.4 使用super关键字 126
5.2 方法重载 128
5.3 方法重写 129
5.4 特殊类 131
5.4.1 抽象类 131
5.4.2 实战——实现计算图形面积 132
5.4.3 内部类 134
5.4.4 匿名类 137
5.5 包 138
5.5.1 创建包 138
5.5.2 使用包 140
5.6 接口 141
5.6.1 定义接口 141
5.6.2 实现接口 142
5.6.3 实战——模拟数据库操作 144
5.7 本章习题 145
第6章 Java中的字符串 147
6.1 创建字符串 148
6.1.1 直接创建 148
6.1.2 使用String类创建 148
6.2 简单处理 149
6.2.1 获取字符串长度 149
6.2.2 去除字符串的空格 150
6.2.3 转换大小写 151
6.2.4 字符串的连接 152
6.2.5 字符串的分割 153
6.2.6 字符串的提取 154
6.2.7 实战——实现截取新闻标题 156
6.3 字符串比较 157
6.3.1 使用equals()方法 157
6.3.2 使用equalsIgnoreCase()方法 158
6.4 字符串查找 159
6.4.1 根据字符查找 159
6.4.2 根据索引查找 160
6.4.3 实战——验证文件名和邮箱地址 161
6.5 字符串替换 162
6.5.1 使用replace()方法 162
6.5.2 使用replaceFirst()方法 163
6.5.3 使用replaceAll()方法 163
6.5.4 实战——批量替换字符串 164
6.6 StringBuffer类 165
6.6.1 创建StringBuffer类 165
6.6.2 追加字符串 165
6.6.3 替换字符 167
6.6.4 实战——替换半角和全角标点符号 167
6.6.5 删除字符串 168
6.6.6 反转字符串 169
6.7 本章习题 169
第7章 引用数据类型 173
7.1 数组概述 174
7.2 一维数组 174
7.2.1 声明数组 174
7.2.2 分配空间 175
7.2.3 一维数组的初始化 175
7.2.4 一维数组的应用 177
7.3 多维数组 179
7.3.1 声明多维数组 179
7.3.2 给多维数组分配空间 180
7.3.3 初始化多维数组 180
7.3.4 访问多维数组中的元素 181
7.4 复制数组 183
7.4.1 使用copyOf()方法和copyOfRange()方法 183
7.4.2 使用arraycopy()方法 185
7.4.3 使用clone()方法 187
7.5 实战——数组排序 188
7.5.1 选择排序 188
7.5.2 冒泡排序 189
7.5.3 快速排序 190
7.6 集合简介 190
7.6.1 集合概述 191
7.6.2 Collection接口 192
7.7 无序列表 192
7.7.1 HashSet类 193
7.7.2 TreeSet类 194
7.8 有序列表 197
7.8.1 ArrayList类 197
7.8.2 LinkedList类 198
7.9 映射 200
7.10 泛型 201
7.10.1 泛型集合 202
7.10.2 定义泛型类 203
7.10.3 泛型方法 204
7.11 实战——员工管理系统 205
7.12 本章习题 208
第8章 处理程序异常 211
8.1 了解Java中的异常 212
8.1.1 异常简介 212
8.1.2 异常处理语句 213
8.1.3 异常类型 214
8.2 捕获异常 215
8.2.1 使用try-catch语句捕获异常 215
8.2.2 使用多重catch语句捕获异常 217
8.2.3 使用try-catch-finally语句捕获异常 219
8.3 抛出异常和声明异常 221
8.3.1 抛出异常 221
8.3.2 声明异常 223
8.4 自定义异常 224
8.5 实战——模拟ATM取款业务办理 226
8.6 本章习题 228
第9章 线程 233
9.1 认识线程 234
9.2 创建线程 234
9.2.1 启动线程 234
9.2.2 主线程 237
9.2.3 修改线程名称 238
9.3 实战——实现Runnable接口的线程 239
9.4 了解线程的生命周期 240
9.5 调度线程 241
9.5.1 线程的优先级 241
9.5.2 加入其他线程 243
9.5.3 休眠一个线程 245
9.5.4 中断线程 246
9.5.5 让步线程 247
9.6 实战——多线程共享数据 248
9.6.1 共享静态变量 249
9.6.2 共享实例成员变量 250
9.7 线程同步 251
9.7.1 安全问题 252
9.7.2 同步代码块 253
9.7.3 同步关键字synchronized 254
9.7.4 同步方法 255
9.8 实战——线程通信 256
9.9 本章习题 258
第10章 Java内置类编程 261
10.1 Object类 262
10.2 System类 264
10.2.1 成员变量 264
10.2.2 成员方法 266
10.3 包装类 268
10.3.1 基本数据类型对应的包装类 268
10.3.2 Integer类 269
10.3.3 Float类 271
10.3.4 Double类 272
10.3.5 Character类 274
10.4 数学类 277
10.4.1 三角函数方法 277
10.4.2 指数函数方法 278
10.4.3 最大值、最小值和绝对值函数方法 279
10.4.4 取整函数方法 280
10.4.5 Random类 281
10.5 日期操作类 282
10.5.1 Date类 282
10.5.2 Calendar类 284
10.6 格式化日期类 288
10.6.1 DateFormat类 288
10.6.2 SimpleDateFormat类 290
10.7 实战——实现日期查询功能 291
10.8 本章习题 295
第11章 Java文件编程 299
11.1 流简介 300
11.1.1 字节流 300
11.1.2 字符流 301
11.1.3 预定义流 302
11.2 使用字节流 303
11.2.1 字节输入流 303
11.2.2 字节输出流 304
11.2.3 字节数组输入流 305
11.2.4 字节数组输出流 306
11.2.5 文件输入流 307
11.2.6 文件输出流 309
11.3 使用字符流 311
11.3.1 字符输入流 311
11.3.2 字符输出流 312
11.3.3 字符文件输入流 313
11.3.4 字符文件输出流 314
11.3.5 字符缓冲区输入流 315
11.3.6 字符缓冲区输出流 317
11.4 操作文件 317
11.4.1 File类概述 317
11.4.2 获取文件属性 318
11.4.3 创建和删除文件 320
11.4.4 创建和删除目录 320
11.4.5 遍历目录 320
11.5 实战——显示写入文件的图书信息 322
11.6 本章习题 326
第12章 图形界面程序设计 329
12.1 Java图形接口 330
12.1.1 AWT简介 330
12.1.2 Swing简介 331
12.2 容器类组件 332
12.2.1 框架 332
12.2.2 对话框 333
12.2.3 面板 335
12.3 布局类组件 337
12.3.1 边界管理器 337
12.3.2 流式布局管理器 339
12.3.3 卡片布局管理器 340
12.3.4 网格布局管理器 341
12.3.5 网格包布局管理器 343
12.4 常用界面组件 345
12.4.1 按钮 345
12.4.2 标签 347
12.4.3 单行文本域 348
12.4.4 多行文本域 350
12.4.5 复选框 351
12.4.6 复选框组 352
12.4.7 列表 353
12.5 处理界面事件 355
12.5.1 事件处理模型 355
12.5.2 事件类 356
12.5.3 事件监听器 357
12.6 实战——制作简单记事本 361
12.7 本章习题 364
第13章 数据库访问技术 367
13.1 JDBC概述 368
13.1.1 JDBC简介 368
13.1.2 JDBC驱动程序分类 369
13.2 JDBC核心接口 371
13.2.1 驱动程序管理器DriverManager 372
13.2.2 数据库连接接口Connection 374
13.2.3 执行SQL语句的接口Statement 377
13.2.4 执行动态SQL语句接口PreparedStatement 378
13.2.5 执行存储过程的接口CallableStatement 379
13.2.6 访问结果集的接口ResultSet 380
13.3 连接数据库 381
13.3.1 纯驱动连接 382
13.3.2 ODBC桥连接 382
13.4 实战——图书信息管理 384
13.4.1 增加数据 384
13.4.2 查询数据 386
13.4.3 更新数据 387
13.4.4 删除数据 388
13.4.5 调用存储过程 389
13.5 高级结果集 391
13.5.1 可滚动结果集 391
13.5.2 可更新结果集 394
13.6 实战——获取列的信息 396
13.7 本章习题 397
第14章 专卖店管理系统 401
14.1 系统概述 402
14.1.1 需求分析 402
14.1.2 系统用例图 403
14.1.3 系统设计 405
14.2 数据库设计 406
14.3 通用模块的实现 410
14.3.1 日期选择组件 410
14.3.2 日期选择按钮 413
14.3.3 连接数据库 414
14.3.4 生成网格布局 415
14.3.5 生成表格布局 416
14.4 系统前台模块 417
14.4.1 系统主界面 417
14.4.2 用户注册模块 419
14.4.3 用户登录模块 422
14.4.4 购物车 424
14.5 系统后台模块 425
14.5.1 管理员登录模块 425
14.5.2 商品管理模块 428
14.5.3 订单管理模块 432
附录 各章习题参考答案 439