第 1章 Java 语言概述 1
1 1 Java 语言简介2
1 1 1 Java语言的特点 2
1 1 2 Java语言的发展 2
1 2 Java 语言的工作原理 3
1 2 1 Java程序的运行流程3
1 2 2 JVM介绍 4
1 3 Java 程序的运行环境 5
1 3 1 JDK 介绍5
1 3 2 下载和安装 JDK 6
1 3 3 配置 JDK8
1 3 4 获得 Java API 文档 9
1 4 Java Application 和 Java Applet 介绍 10
1 4 1 Application介绍 11
1 4 2 Applet介绍 13
1 5 Java 程序的基本要素 14
1 6 Java 的开发工具18
1 6 1 Eclipse概述18
1 6 2 Eclipse的下载和安装 19
1 6 3 Eclipse开发程序20
1 7 Java 程序调试技巧22
1 8 实践案例:创建 HelloWorld 程序 24
1 9 动手练一练 25
1 9 1 练习题 25
1 9 2 上机实践 26
第 2章 简单数据类型及运算 27
2 1 Java 数据类型 28
2 1 1 整数类型 29
2 1 2 浮点型 30
2 1 3 字符型 30
2 1 4 布尔类型 31
2 1 5 数据类型间的转换 31
2 1 6 转义序列 33
2 2 变量与常量 34
2 2 1 变量34
2 2 2 变量的作用域35
2 2 3 常量36
2 3 运算符与表达式37
2 3 1 算术运算符及表达式 37
2 3 2 赋值运算符及表达式 38
2 3 3 自增和自减运算符 39
2 3 4 关系运算符及表达式 42
2 3 5 逻辑运算符及表达式 43
2 3 6 位运算符及表达式 45
2 3 7 条件运算符及表达式 47
2 3 8 运算符的优先级48
2 4 实践案例:打印超市售货清单49
2 5 动手练一练 50
2 5 1 练习题 50
2 5 2 上机实践 52
第 3章 流程控制语句 53
3 1 选择语句 54
3 1 1 简单的 if条件语句 54
3 1 2 if-else条件语句56
3 1 3 if-else if-else条件语句57
3 1 4 嵌套 if语句 59
3 1 5 switch 多分支语句61
3 2 循环语句 63
3 2 1 while循环语句 63
3 2 2 do-while循环语句64
3 2 3 for循环语句66
3 2 4 foreach循环语句 68
3 3 跳转语句 69
3 3 1 break 语句69
3 3 2 continue语句 71
3 3 3 return 语句73
3 4 实践案例:制作万年历 74
3 5 动手练一练 77
3 5 1 练习题 77
3 5 2 上机实践 79
第 4 章 数组 80
4 1 一维数组 81
4 1 1 声明数组 81
4 1 2 分配空间 81
4 1 3 一维数组的初始化 82
4 1 4 一维数组的应用84
4 2 多维数组 85
4 2 1 声明多维数组85
4 2 2 给多维数组分配空间 85
4 2 3 初始化多维数组86
4 2 4 访问多维数组中的元素 87
4 3 搜索数组 88
4 4 数组排序 89
4 4 1 Arrays sort()排序法 90
4 4 2 直接选择排序法91
4 4 3 冒泡排序法 92
4 5 实践案例:购物结账程序 94
4 6 动手练一练 96
4 6 1 练习题 96
4 6 2 上机实践 97
第 5 章 字符串 98
5 1 创建字符串 99
5 1 1 直接使用字符串常量创建字符串变量99
5 1 2 使用 new关键字创建字符串变量 99
5 2 字符串的常用方法 100
5 3 字符串的常用操作 101
5 3 1 获取字符串的长度101
5 3 2 转换字符串的大小写102
5 3 3 去掉字符串的首尾空格 102
5 3 4 字符串比较 102
5 3 5 字符串搜索 103
5 3 6 字符串提取 106
5 3 7 字符串连接 107
5 3 8 字符串替换 108
5 3 9 字符串分割 109
5 4 StringBuffer 类 110
5 4 1 构造 StringBuffer类 110
5 4 2 StringBuffer类的常用方法 111
5 5 实践案例:完善购物结账系统 114
5 6 动手练一练 117
5 6 1 练习题 117
5 6 2 上机实践 118
第 6章 类与对象 120
6 1 面向对象概述 121
6 1 1 对象的概述 121
6 1 2 面向对象的核心特性121
6 2 类结构 124
6 2 1 类概述124
6 2 2 类和对象的区别 125
6 2 3 类是对象的类型 125
6 3 Java 是面向对象的语言126
6 3 1 类的定义126
6 3 2 定义类的成员变量127
6 3 3 定义类的成员方法128
6 3 4 创建类的构造方法131
6 3 5 创建对象134
6 3 6 访问对象的属性和方法 137
6 3 7 类的主方法——main()方法138
6 3 8 对象的销毁 139
6 3 9 this关键字140
6 4 常用修饰符141
6 4 1 访问控制修饰符 141
6 4 2 static静态修饰符143
6 4 3 final修饰符 147
6 5 实践案例:实现发送短信功能 148
6 6 动手练一练151
6 6 1 练习题151
6 6 2 上机实践153
第 7章 深入面向对象编程 154
7 1 类的封装155
7 2 类的继承157
7 2 1 在 Java语言中实现继承 157
7 2 2 单继承162
7 2 3 使用 super关键字 163
7 3 方法重载和方法重写165
7 3 1 方法重载165
7 3 2 方法重写和变量隐藏166
7 4 抽象类与接口 168
7 4 1 抽象类168
7 4 2 接口 170
7 5 包 173
7 5 1 定义包173
7 5 2 使用包175
7 6 实践案例:使用多级继承实现计算长方体体积、重量和价值176
7 7 动手练一练179
7 7 1 练习题179
7 7 2 上机实践180
第 8章 异常处理 181
8 1 异常和异常类型 182
8 1 1 异常的基本概念 182
8 1 2 异常类型183
8 2 Java 异常处理机制 185
8 2 1 使用 try-catch语句捕获异常 185
8 2 2 使用多重 catch语句捕获异常 187
8 2 3 使用 try-catch-finally语句捕获异常 188
8 3 抛出异常和声明异常191
8 3 1 抛出异常191
8 3 2 声明异常193
8 4 自定义异常194
8 5 实践案例:完成添加用户的功能196
8 6 动手练一练198
8 6 1 练习题198
8 6 2 上机实践199
第 9章 Java 常用工具类 200
9 1 Object类201
9 2 包装类 201
9 2 1 基本数据类型所对应的包装类201
9 2 2 Integer 类202
9 2 3 Character类 204
9 3 日期类 207
9 3 1 java util Date类207
9 3 2 java util Calendar类 209
9 4 格式化日期类 211
9 4 1 DateFormat 类 211
9 4 2 SimpleDateFormat 类213
9 5 Random类 214
9 6 实践案例:使用时间类完成日期查询功能 217
9 7 动手练一练221
9 7 1 练习题221
9 7 2 上机实践222
第 10章 Java 的输入/输出流 223
10 1 输入/输出流概述 224
10 1 1 字节流 224
10 1 2 字符流 225
10 1 3 预定义流 226
10 2 字节流 227
10 2 1 字节输入/输出流 228
10 2 2 文件字节输入/输出流229
10 3 字符流 233
10 3 1 字符输入/输出流 234
10 3 2 字符文件输入/输出流235
10 3 3 字符缓冲区输入/输出流 238
10 4 File 类240
10 4 1 File类的构造函数 240
10 4 2 File类的常用方法 240
10 5 RandomAccessFile类随机访问文件 243
10 6 实践案例:将新录学生信息添加到文件中并读取 245
10 7 动手练一练 248
10 7 1 练习题 248
10 7 2 上机实践 249
第 11 章 集合框架 250
11 1 集合框架概述251
11 2 Collection 接口252
11 3 无序列表——Set 集合253
11 3 1 HashSet类 253
11 3 2 TreeSet类254
11 4 有序列表——List 集合 257
11 4 1 ArrayList类258
11 4 2 LinkedList类 259
11 5 映射——Map 261
11 6 泛型集合 263
11 7 实践案例:使用泛型集合模拟 BBS论坛 264
11 8 动手练一练 267
11 8 1 练习题 267
11 8 2 上机实践 268
第 12章 图形用户界面 269
12 1 图形对象概述270
12 2 容器271
12 2 1 Window类 271
12 2 2 Panel类274
12 3 AWT基本组件 275
12 3 1 按钮组件——Button 275
12 3 2 标签——Label 276
12 3 3 单行文本框——TextField 277
12 3 4 多行文本域——TextArea 279
12 3 5 复选框——Checkbox 280
12 3 6 复选框组——CheckboxGroup281
12 4 布局管理器 282
12 4 1 BorderLayout管理器 282
12 4 2 FlowLayout管理器 284
12 4 3 CardLayout管理器 284
12 4 4 GridLayout管理器 285
12 4 5 GridBagLayout管理器 287
12 5 事件处理 289
12 5 1 事件处理概述289
12 5 2 事件类 290
12 5 3 事件监听器291
12 6 实践案例:制作简易计算器295
12 7 动手练一练 301
12 7 1 练习题 301
12 7 2 上机实践 302
第 13章 数据库编程 303
13 1 JDBC简介 304
13 1 1 JDBC程序的工作原理 304
13 1 2 JDBC API结构 305
13 1 3 JDBC驱动 305
13 2 连接数据库的基本步骤 308
13 3 JDBC应用 309
13 3 1 DriverManager类 309
13 3 2 Statement 接口 310
13 3 3 PreparedStatement 接口 312
13 3 4 ResultSet接口314
13 4 实践案例:开发一套用户管理系统 317
13 5 动手练一练 324
13 5 1 练习题 324
13 5 2 上机实践 325
第 14章 学生信息管理系统 326
14 1 系统介绍 327
14 1 1 需求分析 327
14 1 2 系统架构 327
14 2 数据库设计和实现 328
14 3 数据访问类 328
14 4 业务处理类 330
14 5 学生信息管理界面 333
14 5 1 学生信息添加界面 333
14 5 2 学生信息修改界面 335
14 5 3 主界面 338
14 6 总结345
练习题参考答案 346