第1篇 基础篇 4
第0章 学前指导——跨越程序开发的盲区 4
0.1 身边的软件 4
0.2 程序员的成长之路 4
0.3 如何学好编程 5
0.4 就业和薪资 6
0.5 编程我也行 6
0.6 了解开发相关的几个概念 7
0.7 获取开发环境 9
0.8 编程答疑 14
0.9 光盘使用指南 19
第1章 认识Java——拨开Java的神秘面纱 19
1.1 Java简介 30
1.1.1 Java的发展简史 30
1.1.2 Java的发展前景 30
1.1.3 Java的特性 31
1.1.4 Java程序的运行原理 31
1.2 Java的版本 32
1.2.1 Java SE简介 32
1.2.2 Java EE简介 32
1.2.3 Java ME简介 33
1.3 本章内容回顾 33
1.4 实践练习 33
第2章 Java开发环境——构建程序开发的基石 33
2.1 JDK的安装、配置和测试 36
2.1.1 JDK的安装 36
2.1.2 配置环境变量 37
2.1.3 测试Java开发环境 38
2.2 Java程序的编写、编译和执行 39
2.2.1 使用记事本编写Java程序 40
2.2.2 编译和执行Java程序 41
2.3 Eclipse集成开发工具 42
2.3.1 Eclipse介绍 43
2.3.2 Eclipse的安装和启动 43
2.3.3 Eclipse的界面组成 44
2.3.4 Eclipse的菜单 44
2.3.5 Eclipse的工具栏 50
2.4 使用Eclipse 50
2.4.1 创建Eclipse项目 50
2.4.2 在项目中创建包和类 50
2.4.3 打开、关闭和运行项目 52
2.4.4 重命名项目、包和类 53
2.4.5 导入项目 55
2.4.6 导出项目 57
2.5 本章内容回顾 58
2.6 实践练习 58
第3章 标识符和基本数据类型——Java开发的必修课 58
3.1 Java程序的基本结构 60
3.2 关键字和保留字 61
3.2.1 关键字 61
3.2.2 保留字 62
3.3 标识符及其命名规则 63
3.3.1 标识符 63
3.3.2 标识符的命名规则 63
3.4 常量和变量 64
3.4.1 常量 64
3.4.2 变量 65
3.5 基本数据类型 66
3.5.1 整数类型 67
3.5.2 浮点类型 70
3.5.3 字符类型 71
3.5.4 布尔类型 72
3.6 数据类型的转换 72
3.6.1 隐式类型转换 73
3.6.2 显式类型转换 74
3.7 本章内容回顾 77
3.8 实践练习 77
第4章 运算符和表达式——构造Java代码的润滑剂 77
4.1 运算符 80
4.1.1 算术运算符 80
4.1.2 关系运算符 81
4.1.3 逻辑运算符 82
4.1.4 自增、自减运算符 83
4.1.5 位运算符 84
4.1.6 条件运算符 89
4.1.7 赋值运算符 90
4.2 表达式 90
4.2.1 算术表达式 91
4.2.2 关系表达式 91
4.2.3 逻辑表达式 91
4.2.4 赋值表达式 91
4.3 运算符的优先级 92
4.4 程序注释和编码书写规范 94
4.4.1 程序注释 94
4.4.2 编码书写规范 95
4.5 本章内容回顾 96
4.6 实践练习 96
第5章 分支结构——构建合乎逻辑的代码 96
5.1 条件语句 100
5.1.1 if语句 100
5.1.2 if-else语句 102
5.1.3 复杂if语句 103
5.1.4 if语句的嵌套 105
5.2 switch多分支语句 107
5.3 本章内容回顾 109
5.4 实践练习 109
第6章 循环语句——提高程序效率的利器 109
6.1 for循环 112
6.1.1 for循环 112
6.1.2 for-each循环 114
6.2 while循环 115
6.3 do-while循环 117
6.4 break语句 118
6.4.1 无标签的break语句 118
6.4.2 带标签的break语句 120
6.5 continue语句 121
6.5.1 无标签的continue语句 121
6.5.2 带标签的continue语句 122
6.6 本章内容回顾 123
6.7 实践练习 124
第7章 编程加油站(一) 126
必知必会001 能够正确配置环境变量 126
必知必会002 在命令行输入javac报错 126
必知必会003 编写Java程序的注意事项 126
必知必会004 编译程序时提示找不到符号错误 127
必知必会005 编译程序时提示软件包不存在错误 127
必知必会006 提示NoSuchMethodError:main错误 127
必知必会007 标识符的命名规则 128
必知必会008 常量和变量的区别 128
必知必会009 显示类型转换的精度损失 128
必知必会010 掌握自增、自减运算符 128
必知必会011 使用for-each循环遍历数组 129
必知必会012 带标签的break语句 129
必知必会013 带标签的continue语句 129
第2篇 进阶篇 134
第8章 字符串——打开字符串的潘多拉魔盒 134
8.1 声明和创建字符串 134
8.1.1 String类的常用构造方法 134
8.1.2 声明和创建字符串 134
8.2 String类的常用方法 136
8.3 进行字符串连接 145
8.3.1 连接字符串 145
8.3.2 连接其他类型 146
8.4 使用字符串生成器 147
8.4.1 StringBuilder类 147
8.4.2 StringBuilder类的常用构造方法 147
8.4.3 StringBuilder类的常用方法 148
8.5 格式化字符串 149
8.5.1 String类的format方法 150
8.5.2 日期格式化 150
8.5.3 时间格式化 151
8.5.4 日期或时间组合的格式化 152
8.5.5 常规类型格式化 153
8.6 使用正则表达式 154
8.6.1 String类的matches方法 155
8.6.2 正则表达式的元字符 155
8.6.3 方括号中元字符的含义 156
8.6.4 正则表达式的限定符 157
8.7 本章内容回顾 159
8.8 实践练习 159
第9章 使用数组——串起数据的珍珠链 159
9.1 数组概述 162
9.2 一维数组 162
9.2.1 声明和创建一维数组 162
9.2.2 初始化一维数组 164
9.2.3 使用一维数组 165
9.3 二维数组 166
9.3.1 声明和创建二维数组 166
9.3.2 初始化二维数组 167
9.3.3 使用二维数组 168
9.4 三维数组和多维数组 169
9.4.1 声明和创建三维数组 169
9.4.2 初始化三维数组 170
9.4.3 使用三维数组 171
9.5 操作数组 172
9.5.1 遍历数组 172
9.5.2 排序数组 177
9.5.3 复制数组 178
9.5.4 查找指定元素 179
9.5.5 使用Arrays类操作数组 179
9.6 本章内容回顾 183
9.7 实践练习 183
第10章 面向对象编程——步入面向对象的殿堂 183
10.1 面向对象 186
10.1.1 对象 186
10.1.2 类 186
10.2 创建类 186
10.3 成员变量和方法 187
10.3.1 成员变量和方法 187
10.3.2 this关键字 189
10.4 局部变量 190
10.5 变量的作用域 190
10.5.1 成员变量的作用域 190
10.5.2 局部变量的作用域 191
10.6 类的构造方法 191
10.7 对象的创建 192
10.8 访问类的成员变量和方法 193
10.9 静态变量、常量和方法 194
10.9.1 静态变量 194
10.9.2 静态常量 196
10.9.3 静态方法 196
10.9.4 静态语句块 197
10.10 对象的引用、比较和销毁 198
10.10.1 对象的引用 198
10.10.2 对象的比较 198
10.10.3 对象的销毁 200
10.11 本章内容回顾 202
10.12 实践练习 203
第11章 继承和多态——有效利用已有代码 203
11.1 Java中的包 206
11.1.1 类名冲突 206
11.1.2 完整的类路径 206
11.1.3 包的创建和引用 206
11.1.4 类之间的相互访问 209
11.2 继承 212
11.2.1 Object类 213
11.2.2 类的继承 213
11.2.3 super关键字 214
11.3 对象类型的转换 216
11.3.1 向上转型 217
11.3.2 向下转型 218
11.3.3 使用instanceof判断对象类型 219
11.4 使用final关键字 220
11.4.1 final变量 220
11.4.2 final方法 221
11.4.3 final类 223
11.5 权限修饰符 224
11.6 关于方法 228
11.6.1 方法重载 228
11.6.2 递归方法 230
11.7 多态 231
11.8 本章内容回顾 232
11.9 实践练习 232
第12章 编程加油站(二) 236
必知必会001 掌握字符串的连接 236
必知必会002 格式化字符串 236
必知必会003 使用正则表达式 237
必知必会004 解决数组下标越界错误 239
必知必会005 this关键字的3种用法 239
必知必会006 类的构造方法 240
必知必会007 使用“=”和equals()方法比较对象的区别 240
必知必会008 如何实现类的继承 241
必知必会009 super关键字的两种用法 242
必知必会010 解决向下转型出现的错误 242
必知必会011 权限修饰符在类中的可见性 243
必知必会012 方法重载及使用 243
第3篇 高级篇 248
第13章 抽象类、接口和内部类——团队协作开发的保障 248
13.1 抽象类 248
13.2 接口 250
13.3 内部类 252
13.3.1 成员内部类 253
13.3.2 局部内部类 254
13.3.3 匿名内部类 256
13.3.4 静态内部类 258
13.4 本章内容回顾 259
13.5 实践练习 259
第14章 Java中的集合——高效处理数据的利器 259
14.1 集合概述 262
14.2 Collection接口和Iterator接口 262
14.2.1 Collection接口 262
14.2.2 Iterator接口 266
14.3 Set接口及其常用实现类 269
14.3.1 HashSet类 269
14.3.2 TreeSet类 273
14.4 List接口及其常用实现类 277
14.4.1 List接口 277
14.4.2 ArrayList类 278
14.4.3 LinkedList类 280
14.4.4 Vector类 282
14.4.5 Stack类 285
14.5 Map接口及其常用实现类 287
14.5.1 Map接口 288
14.5.2 Hashtable类 289
14.5.3 HashMap类 291
14.5.4 TreeMap类 294
14.6 本章内容回顾 297
14.7 实践练习 298
第15章 异常处理——获取螳螂捕蝉之钥 298
15.1 异常概述 300
15.2 异常的分类 300
15.2.1 可控式异常 301
15.2.2 运行时异常 302
15.3 获取异常信息 303
15.4 处理异常 305
15.4.1 使用try-catch处理异常 305
15.4.2 使用try-catch-finally处理异常 306
15.4.3 使用try-finally处理异常 308
15.5 抛出异常 309
15.5.1 使用throws声明抛出异常 309
15.5.2 使用throw语句抛出异常 311
15.6 自定义异常 312
15.6.1 创建自定义异常类 312
15.6.2 使用自定义异常类 313
15.7 异常的使用原则 314
15.8 本章内容回顾 314
15.9 实践练习 314
第16章 JDBC编程——有效操作数据库的捷径 314
16.1 JDBC概述 316
16.2 JDBC的常用类和接口 316
16.2.1 DriverManager类 317
16.2.2 Connection接口 317
16.2.3 Statement接口 320
16.2.4 ResultSet接口 322
16.2.5 PreparedStatement接口 331
16.2.6 CallableStatement接口 333
16.3 通过JDBC操作数据库 336
16.3.1 加载数据库驱动 336
16.3.2 建立连接 336
16.3.3 执行SQL语句 337
16.3.4 操作查询结果集 338
16.3.5 添加、修改和删除记录 340
16.3.6 使用预处理语句 345
16.3.7 调用存储过程 352
16.3.8 JDBC的事务管理 354
16.4 本章内容回顾 356
16.5 实践练习 356
第17章 Swing程序设计——搭建交互图形界面的阶梯 356
17.1 Swing概述 358
17.2 Swing常用窗体 358
17.2.1 JFrame框架窗体 358
17.2.2 JDialog对话框窗体 363
17.3 Swing常用布局 365
17.3.1 null绝对布局 365
17.3.2 FlowLayout流布局 366
17.3.3 BorderLayout边界布局 370
17.3.4 GridLayout网格布局 373
17.3.5 CardLayout卡片布局 375
17.4 Swing常用面板 379
17.4.1 JPanel面板 380
17.4.2 JScrollPane滚动窗格 382
17.5 Swing常用组件 383
17.5.1 图标和图像 384
17.5.2 JLabel标签 386
17.5.3 JButton按钮 388
17.5.4 JTextField文本框 391
17.5.5 JPasswordField密码框 392
17.5.6 JComboBox组合框 394
17.5.7 JRadioButton单选按钮 397
17.5.8 JCheckBox复选框 399
17.5.9 JTable表格 401
17.6 菜单 407
17.6.1 菜单栏 407
17.6.2 菜单 408
17.6.3 菜单项 409
17.7 工具单 413
17.8 Swing常用事件 416
17.8.1 组件操作控制 416
17.8.2 焦点控制 418
17.8.3 窗口控制 421
17.8.4 键盘控制 423
17.8.5 鼠标控制 425
17.9 本章内容回顾 427
17.10 实践练习 427
第18章 编程加油站(三) 430
必知必会001 创建抽象类 430
必知必会002 使用接口 430
必知必会003 获取异常信息 431
必知必会004 使用try-catch处理异常 431
必知必会005 使用try-catch-finally处理异常 431
必知必会006 使用try-finally处理异常 432
必知必会007 创建自定义异常 432
必知必会008 加载数据库驱动 432
必知必会009 解决类没有找到异常 433
必知必会010 建立数据库连接 433
必知必会011 出现Error establishing socket错误 434
必知必会012 无法打开登录中请求的数据库 434
必知必会013 用户sa登录失败 435
必知必会014 调用存储过程 436
必知必会015 创建图标时发生空指针异常 436