第1篇 语言基础篇 1
第1章 Java入门(教学视频:18分钟) 1
1.1 Java简介 1
1.2 Java的特点 1
1.3 JDK的安装及配置 2
1.3.1 JDK的下载安装 2
1.3.2 配置环境变量 3
1.3.3 JDK环境的测试 3
1.4 Java语言开发工具 4
1.4.1 Eclipse的安装与使用 4
1.4.2 MyEclipse的安装 6
1.4.3 使用开发工具编写“HelloWorld!” 7
1.5 习题 9
第2章 Java基本数据类型(教学视频:46分钟) 10
2.1 基本数据类型 10
2.1.1 布尔类型 10
2.1.2 字符型 11
2.1.3 整型 11
2.1.4 实型 12
2.2 数据类型的转换 12
2.2.1 隐式数据类型转换 13
2.2.2 显式类型转换 14
2.3 运算符和表达式 14
2.3.1 算术运算符及表达式 15
2.3.2 关系运算符及表达式 16
2.3.3 逻辑运算符及表达式 17
2.3.4 位运算符及表达式 18
2.3.5 赋值运算符及表达式 19
2.4 习题 19
第3章 数组(教学视频:31分钟) 23
3.1 数组基础 23
3.1.1 创建数组 23
3.1.2 数组的初始化 24
3.1.3 数组的使用 25
3.2 数组的排序 7
3.2.1 选择排序法 27
3.2.2 冒泡排序法 28
3.3 多维数组 28
3.4 习题 30
第4章 字符串(教学视频:27分钟) 34
4.1 字符串 34
4.1.1 声明字符串 34
4.1.2 创建字符串 34
4.2 字符串操作 35
4.2.1 字符串的比较 35
4.2.2 连接字符串 36
4.2.3 复制字符串 37
4.2.4 更改字符串的内容 37
4.2.5 获取字符串的长度 38
4.2.6 分割字符串 39
4.3 StringBuffer 39
4.4 习题 40
第5章 程序控制语句(教学视频:24分钟) 43
5.1 顺序结构 43
5.2 条件语句 43
5.2.1 if语句 44
5.2.2 switch语句 47
5.3 循环语句 48
5.3.1 for循环 48
5.3.2 while循环 50
5.3.3 do-while 51
5.4 中断控制 52
5.4.1 continue 52
5.4 2 break 53
5.4.3 return 53
5.5 习题 54
第6章 面向对象程序设计(教学视频:10分钟) 59
6.1 面向对象程序设计基础 59
6.2 类 59
6.2.1 定义及使用类 59
6.2.2 主方法 61
6.2.3 构造方法 61
6.2.4 成员变量 64
6.2.5 局部变量 66
6.2.6 this关键字 67
6.3 对象 69
6.3.1 创建和使用对象 69
6.3.2 对象行为和属性的访问 71
6.3.3 比较对象 72
6.3.4 销毁对象 73
6.4 习题 74
第7章 继承(教学视频:13分钟) 78
7.1 继承概述 78
7.1.1 什么是继承 78
7.1.2 实现继承 78
7.2 继承关系 79
7.2.1 单一继承关系 79
7.2.2 多重继承关系 80
7.3 抽象类 81
7.4 使用关键字final 82
7.4.1 常量 82
7.4.2 方法 83
7.4.3 类 83
7.5 Object类 84
7.5.1 Object对象 84
7.5.2 重写equals方法和toString方法 84
7.6 习题 86
第8章 多态(教学视频:15分钟) 90
8.1 多态的概述 90
8.1.1 重写 90
8.1.2 重载 92
8.2 绑定 94
8.2.1 静态绑定 94
8.2.2 动态绑定 95
8.3 习题 96
第9章 接口(教学视频:20分钟) 100
9.1 认识接口 100
9.1.1 概述 100
9.1.2 定义接口 100
9.1.3 实现接口 101
9.1.4 多重实现接口 102
9.1.5 接口的引用 103
9.2 内部类 105
9.2.1 内部类概述 105
9.2.2 匿名内部类 106
9.2.3 继承内部类 108
9.2.4 静态内部类 109
9.2.5 引用外部类的对象 109
9.3 包 111
9.3.1 创建包 111
9.3.2 导入包 112
9.4 习题 112
第2篇 高级编程篇 119
第10章 图形界面开发基础(教学视频:43分钟) 119
10.1 AWT简介 119
10.2 容器 119
10.2.1 窗口 119
10.2.2 面板 121
10.3 组件 122
10.3.1 按钮和标签 122
10.3.2 复选框 124
10.3.3 文本域 125
10.3.4 列表 127
10.4 布局管理器 129
10.4.1 网格布局管理器 129
10.4.2 顺序布局管理器 132
10.4.3 边界布局管理器 134
10.4.4 卡片布局管理器 135
10.5 习题 137
第11章 Swing(教学视频:42分钟) 145
11.1 Swing基础 145
11.2 Swing组件 145
11.2.1 按钮 146
11.2.2 复选框 146
11.2.3 单选按钮 147
11.2.4 组合框 149
11.2.5 进度条 150
11.2.6 表格 150
11.2.7 树 150
11.2.8 文本框 151
11.3 Swing常用窗体 153
11.3.1 JFrame窗体 153
11.3.2 JDialog窗体 154
11.4 Swing常用面板 156
11.5 习题 158
第12章 事件处理(教学视频:33分钟) 167
12.1 事件类 167
12.1.1 事件类分类 167
12.1.2 动作事件类 168
12.1.3 调整事件类 168
12.1.4 焦点事件类 168
12.1.5 项目事件类 169
12.1.6 键盘事件类 169
12.1.7 鼠标事件类 171
12.1.8 窗口事件类 172
12.2 事件监听器 173
12.2.1 事件监听器的接口实现 174
12.2.2 应用事件监听器 174
12.2.3 事件监听器的特点 175
12.3 事件适配器 175
12.4 事件应用方法 176
12.4.1 内部类方式应用 176
12.4.2 匿名类方式应用 177
12.4.3 外部类方式应用 178
12.5 习题 179
第13章 数字处理(教学视频:21分钟) 186
13.1 Math类介绍 186
13.2 猜数字游戏 187
13.3 判断是否是数字 188
13.4 字符串转换成数字 190
13.5 格式化数字 191
13.6 习题 193
第14章 异常处理(教学视频:12分钟) 196
14.1 异常概述 196
14.1.1 异常发生的原因 197
14.1.2 异常处理机制 197
14.2 异常的结构 197
14.2.1 异常的层次结构 197
14.2.2 Java中的运行时异常类 198
14.3 异常的处理 200
14.3.1 获取异常信息 200
14.3.2 异常声明 202
14.3.3 抛出异常 203
14.4 用户自定义异常类 206
14.4.1 创建自己的异常类 206
14.4.2 使用自己的异常类 207
14.5 习题 208
第15章 文件的输入与输出(教学视频:30分钟) 213
15.1 流的概念 213
15.2 输入输出流 213
15.3 字节流 214
15.3.1 字节输入、输出流 214
15.3.2 字节文件输入、输出流 215
15.3.3 字节缓冲输入、输出流 216
15.3.4 字节数据输入、输出流 218
15.3.5 字节对象输入、输出流 220
15.4 字符流 222
15.4.1 字符读、写流 222
15.4.2 字符输入、输出流 223
15.4.3 文件读、写字符流 224
15.4.4 字符缓冲读、写流 226
15.5 文件类 226
15.5.1 File类 226
15.5.2 File类应用 227
15.5.3 RandomAccessFile类 228
15.5.4 RandomAccessFile应用 229
15.6 习题 232
第16章 反射(教学视频:20分钟) 240
16.1 反射概述 240
16.1.1 使用Class类 242
16.1.2 成员变量 243
16.1.3 成员方法 243
16.1.4 创建实例 244
16.2 应用反射 244
16.2.1 访问类变量 244
16.2.2 调用类方法 246
16.3 反射的安全性 247
16.4 习题 249
第17章 线程(教学视频:35分钟) 255
17.1 线程的概念 255
17.2 线程的创建 255
17.2.1 使用Thread创建线程 255
17.2.2 使用Runnable创建线程 257
17.2.3 两种方法比较 258
17.2.4 创建多线程 258
17.3 线程的使用 260
17.3.1 开启线程 260
17.3.2 线程休眠 261
17.3.3 等待线程 263
17.4 线程的控制 265
17.4.1 线程的优先级 265
17.4.2 线程让步 267
17.4.3 线程同步 269
17.4.4 多线程的死锁问题 273
17.5 线程池 274
17.6 Swing线程应用 277
17.6.1 多线程模拟钟表 277
17.6.2 线程的优先级模拟赛车 281
17.6.3 使用断点实现计数器 283
17.6.4 使用线程实现屏保“璀璨星空” 286
17.6.5 实现下雪场景 288
17.6.6 实现瀑布效果 290
17.6.7 滚动字幕 292
17.7 习题 294
第18章 正则表达式(教学视频:17分钟) 302
18.1 正则表达式语法 302
18.2 正则表达式的使用 304
18.2.1 Pattern类 304
18.2.2 Matcher类 305
18.2.3 综合运用 306
18.3 String类中的正则表达式应用 307
18.3.1 模式匹配检查 307
18.3.2 查找替换 308
18.3.3 字符串分析 309
18.4 习题 311
第19章 封装类(教学视频:21分钟) 314
19.1 常用的数据类型包装类 314
19.1.1 Integer类 314
19.1.2 Double类 315
19.1.3 Number类 317
19.1.4 Float类 317
19.1.5 Boolean类 318
19.1.6 Byte类 320
19.2 StringBuffer类 321
19.2.1 StringBuffer简介 321
19.2.2 StringBuffer类的方法 321
19.3 日期操作类 323
19.3.1 Date类 324
19.3.2 DateFormat类 325
19.4 习题 326
第20章 容器(教学视频:23分钟) 331
20.1 容器概述 331
20.2 迭代器 331
20.3 List 333
20.3.1 List接口方法 333
20.3.2 链表迭代器接口方法 333
20.3.3 链表和数组链表 334
20.3.4 List应用 334
20.4 集Set 339
20.4.1 Set接口的方法 339
20.4.2 哈希集和树集 340
20.4.3 实现Set 341
20.5 映射Map 343
20.5.1 Map接口方法 343
20.5.2 哈希映射和树映射 344
20.5.3 哈希映射应用 345
20.5.4 实现Map 346
20.6 习题 347
第21章 泛型(教学视频:15分钟) 355
21.1 泛型概述 355
21.2 泛型格式 355
21.2.1 定义泛型类 355
21.2.2 类型变量的限制 358
21.3 泛型参数的继承和通配符 359
21.3.1 泛型的继承 359
21.3.2 泛型中的通配符 359
21.4 习题 360
第22章 数据结构(教学视频:39分钟) 364
22.1 数据结构的基本概念 364
22.2 算法 364
22.2.1 算法概述 364
22.2.2 算法分析 364
22.2.3 递归算法 365
22.2.4 排序算法 366
22.3 链表 368
22.3.1 Java中的链表 368
22.3.2 链表的添加 368
22.3.3 链表的删除 370
22.4 栈和队列 372
22.4.1 栈 372
22.4.2 队列 372
22.4.3 Java实现栈 372
22.4.4 Java实现队列 373
22.5 习题 374
第23章 数据库(教学视频:20分钟) 381
23.1 数据库的介绍 381
23.2 MySQL概述 381
23.2.1 MySQL简介 381
23.2.2 下载并安装MySQL 382
23.2.3 MySQL使用 385
23.3 SQL语句 387
23.3.1 查询语句SELECT 388
23.3.2 插入语句INSERT 388
23.3.3 更新语句UPDATE 388
23.3.4 删除语句DELETE 389
23.3.5 建表语句CREATE 389
23.3.6 修改表语句ALTER 389
23.3.7 删除表语句DROP 390
23.4 JDBC设计 390
23.4.1 JDBC常见接口和类 390
23.4.2 JDBC数据库连接步骤 391
23.4.3 加载JDBC驱动程序 392
23.4.4 获取Connection连接对象 393
23.5 Java与各种数据库连接 394
23.6 习题 395
第24章 Applet编程(教学视频:15分钟) 399
24.1 Applet类 399
24.1.1 Applet简介 399
24.1.2 Applet的开发流程 399
24.1.3 Applet的方法 400
24.1.4 Applet的生命周期 400
24.2 Applet应用 402
24.2.1 Applet中的文字处理 403
24.2.2 动态物体输出 408
24.2.3 图片处理 413
24.2.4 放大镜 415
24.3 习题 417
第3篇 网络编程篇 422
第25章 网络编程(教学视频:30分钟) 422
25.1 网络基本概念 422
25.2 TCP/IP 422
25.2.1 TCP/IP与网络协议 422
25.2.2 传输控制层(TCP) 423
25.2.3 IP应用 425
25.3 Socket 429
25.3.1 Socket类 429
25.3.2 ServerSocket类 430
25.3.3 Socket应用 431
25.4 URL 435
25.4.1 URL的使用 435
25.4.2 提交表单信息 437
25.4.3 简单的浏览器 437
25.5 习题 439
第26章 JSP(教学视频:31分钟) 445
26.1 JSP运行环境搭建 445
26.1.1 Tomcat下载与安装 445
26.1.2 Tomcat的环境变量配置 446
26.2 基本语法 447
26.2.1 注释 447
26.2.2 声明 448
26.2.3 表达式 449
26.2.4 脚本集 449
26.3 JSP指令元素 451
26.3.1 Include指令 451
26.3.2 Page指令 452
26.3.3 Taglib指令 453
26.4 JSP动作元素 454
26.4.1 <jsp:forward> 454
26.4.2 <jsp:useBean> 454
26.4.3 <jsp:setProperty> 456
26.4.4 <jsp:getProperty> 457
26.4.5 <jsp:include> 458
26.4.6 <jsp:plugin> 458
26.5 内置对象 459
26.5.1 out对象 460
26.5.2 request对象 460
26.5.3 response对象 463
26.5.4 session对象 466
26.5.5 application对象 468
26.5.6 pageContext对象 470
26.5.7 exception对象 470
26.5.8 config对象 471
26.6 习题 472
第27章 Servlet(教学视频:37分钟) 476
27.1 Servlet简介 476
27.1.1 Servlet接口 476
27.1.2 目录结构 476
27.1.3 编写Servlet程序 477
27.2 Servlet的生命周期 480
27.3 HttpServlet类 480
27.3.1 doGet 480
27.3.2 doPost 483
27.4 HttpServletResponse类及状态响应码 488
27.5 Servlet中的请求与响应 489
27.6 Servlet之间的跳转 491
27.6.1 Forward 491
27.6.2 Redirect 493
27.6.3 Refresh 495
27.7 JavaBean 496
27.7.1 使用JavaBean 496
27.7.2 JSP中的JavaBean 496
27.8 习题 499
第4篇 综合案例篇 505
第28章 智达图书馆管理系统 505
28.1 项目立项 505
28.1.1 需求分析 505
28.1.2 可行性分析 505
28.2 详细设计 506
28.2.1 系统目标 507
28.2.2 系统功能结构 507
28.2.3 构建开发环境 507
28.2.4 学生端系统预览 507
28.2.5 管理员端系统预览 509
28.3 数据库设计 510
28.3.1 数据库分析 511
28.3.2 E-R图 511
28.3.3 数据表设计 512
28.3.4 导入数据 514
28.4 数据库接口 515
28.5 登录模块 516
28.5.1 登录界面 516
28.5.2 键盘易用性 517
28.5.3 管理员登录 518
28.5.4 学生登录 519
28.6 管理模块 520
28.6.1 管理端界面的初始化 520
28.6.2 管理端其他方法介绍 522
28.7 图书查询模块 524
28.7.1 查询界面 524
28.7.2 查询界面构造器 525
28.7.3 简单查询 526
28.7.4 高级查询 527
28.8 图书借阅预约模块 529
28.8.1 界面开发 530
28.8.2 显示图书信息 530
28.8.3 借阅预约功能 532
28.9 图书归还挂失模块 533
28.9.1 界面开发 534
28.9.2 查询借书记录 534
28.9.3 归还和挂失图书 535
28.9.4 挂失处理的开发 536
28.9.5 其他方法介绍 537
28.10 图书超期模块 539
28.10.1 界面开发 539
28.10.2 查询超期天数 540
28.10.3 查询及交纳欠款 541
28.11 学生管理模块 542
28.11.1 界面开发 542
28.11.2 响应管理事件 543
28.11.3 操作学生信息 543
28.12 图书管理模块 546
28.12.1 界面开发 546
28.12.2 响应管理事件 547
28.12.3 操作图书信息 547
28.12.4 修改图书信息 548
28.13 管理员管理模块 549
28.13.1 界面开发 549
28.13.2 响应管理事件 550
28.13.3 普通管理员功能 552
28.13.4 添加管理员 553
28.13.5 删除管理员功能 554
28.13.6 修改管理员信息 554
28.13.7 查询管理员信息 555
28.14 集成和测试 556
28.15 总结 557