基础篇 1
第1章 Java安装和配置 1
1.1 Java概述 2
1.1.1 Java简介 2
1.1.2 Java的特点 2
1.1.3 Java语言的应用前景 5
1.1.4 J2SDK、JDK、JRE和JVM 5
1.1.5 JDK 6新增功能 6
1.1.6 Java扩展 7
1.2 安装Java 7
1.3 配置Java环境变量 9
1.3.1 命令行方式 9
1.3.2 图形界面方式 10
1.3.3 查看Java版本 11
1.3.4 调试JDK 12
1.4 Java开发环境Eclipse 13
1.4.1 概述 13
1.4.2 安装Eclipse及其语言包 15
1.4.3 Eclipse组成 15
1.4.4 创建一个简单的Java应用程序 17
1.5 EditPlus 23
1.5.1 配置编译功能 23
1.5.2 添加执行功能 24
1.5.3 快捷键 24
1.6 本章小结 24
第2章 Java数据类型 25
2.1 Java的基本数据类型 26
2.2 简单数据类型 26
2.2.1 整型 26
2.2.2 浮点型 28
2.2.3 字符型 29
2.2.4 布尔型 32
2.3 Java标识符 33
2.4 Java关键字 34
2.5 变量 35
2.5.1 概念 35
2.5.2 声明 35
2.5.3 为变量赋值 37
2.5.4 动态赋值 39
2.5.5 作用域 40
2.6 常量 43
2.7 数据类型的转换 45
2.7.1 数据类型优先级 45
2.7.2 数值类型的数据转换 45
2.7.3 数据类型转换实例 49
2.8 本章小结 50
第3章 Java运算符和表达式 51
3.1 Java运算符 52
3.2 表达式 52
3.2.1 算术运算符和表达式 52
3.2.2 关系运算符和表达式 58
3.2.3 逻辑运算符和表达式 59
3.2.4 位运算符和表达式 61
3.2.5 赋值运算符和表达式 63
3.2.6 条件运算符和表达式 64
3.2.7 字符串连接运算符和表达式 66
3.3 运算符优先级 67
3.4 本章小结 69
第4章 Java基本语句 70
4.1 基本结构 71
4.2 注释语句 73
4.2.1 单行注释 73
4.2.2 多行注释 73
4.3 顺序语句 75
4.4 条件分支语句 77
4.4.1 if语句 77
4.4.2 if语句块 79
4.4.3 if...else if 82
4.4.4 if嵌套 84
4.4.5 switch语句 85
4.5 循环语句 87
4.5.1 for语句 88
4.5.2 for语句嵌套 90
4.5.3 while语句 92
4.5.4 do...while语句 94
4.6 跳转语句 96
4.6.1 break语句 96
4.6.2 continue语句 98
4.6.3 return语句 99
4.6.4 跳转语句比较 104
4.7 本章小结 106
第5章 Java数组和字符串 107
5.1 声明数组 108
5.2 创建数组 108
5.3 访问数组元素 111
5.4 多维数组 112
5.4.1 多维数组 112
5.4.2 二维数组 115
5.5 复制数组 117
5.6 使用数组 119
5.7 字符串 121
5.7.1 字符串 121
5.7.2 字符串操作 123
5.7.3 StringBuilder 143
5.8 本章小结 147
面向对象编程篇 148
第6章 Java面向对象编程 148
6.1 Java对象基础 149
6.1.1 对象 149
6.1.2 基本特性 149
6.2 类 150
6.2.1 概念 150
6.2.2 构造方法 151
6.2.3 类属性 158
6.2.4 方法 161
6.3 this关键字 168
6.4 使用类 170
6.5 类实例 174
6.6 本章小结 177
第7章 深入Java面向对象编程 179
7.1 继承和多态 180
7.1.1 继承 180
7.1.2 重载 187
7.1.3 覆盖方法 194
7.2 抽象类和抽象方法 200
7.3 接口 205
7.3.1 接口 205
7.3.2 抽象类和接口 212
7.4 访问控制 216
7.4.1 访问控制关键字 216
7.4.2 this和super 219
7.4.3 static和final 220
7.5 包、API和Java文件 225
7.5.1 Java包 225
7.5.2 Java API 228
7.5.3 Java文件 229
7.6 本章小结 229
高级编程篇 230
第8章 Java异常处理 230
8.1 Java异常 231
8.1.1 异常 231
8.1.2 异常类 232
8.1.3 异常的重要性 234
8.1.4 Java异常处理机制 234
8.2 捕获异常 235
8.2.1 try...catch 235
8.2.2 多异常捕获 241
8.2.3 try...catch语句嵌套 244
8.2.4 try...catch…finally 246
8.2.5 return语句 248
8.3 抛出异常 250
8.3.1 throws语句 250
8.3.2 throw语句 253
8.3.3 throws和throw的区别 255
8.4 捕获和抛出异常 256
8.5 创建自定义异常 257
8.6 异常处理中的注意事项 260
8.7 本章小结 263
第9章 Java输入输出流 264
9.1 IO体系 265
9.1.1 IO简介 265
9.1.2 IO流的类层次结构 266
9.2 File 269
9.2.1 构造方法 269
9.2.2 常用方法 269
9.2.3 文件操作 271
9.3 字节流 275
9.3.1 抽象类InputStream和OutputStream 275
9.3.2 FileInputStream和FileOutStream 276
9.3.3 FilterInputStream和FilterOutputStream 284
9.3.4 BufferedInputStrean和BufferedOutputStream 286
9.3.5 DataInputStream和DataInputStream 294
9.3.6 控制台输入输出流 302
9.3.7 字节流实例 305
9.4 字符流 308
9.4.1 Reader和Writer抽象类 308
9.4.2 FilterReader和FilterWriter抽象类 310
9.4.3 FileReader和FileWriter类 311
9.4.4 BufferedReader和BufferedWriter类 321
9.4.5 字节流和字符流转换 330
9.4.6 字符流实例 341
9.5 本章小结 343
第10章 Java图形用户界面 344
10.1 概述 345
10.1.1 AWT简介 345
10.1.2 AWT类的层次结构 345
10.1.3 组件、事件、容器和布局管理器 346
10.2 创建简易图形用户界面 349
10.2.1 创建界面 349
10.2.2 创建组件 352
10.2.3 在容器中添加组件 353
10.2.4 关闭窗口 354
10.3 AWT布局管理器 356
10.4 AWT事件处理 373
10.4.1 事件模型 373
10.4.2 事件处理器 375
10.4.3 事件适配器 383
10.4.4 创建一个GUI应用程序 387
10.5 AWT组件和容器 390
10.5.1 窗体 390
10.5.2 常用组件 392
10.5.3 常用容器 406
10.5.4 创建Java可视化应用程序 408
10.6 Swing简介 410
10.6.1 概述 411
10.6.2 Swing类层次结构 411
10.7 Swing容器和组件 412
10.7.1 AWT和Swing比较 412
10.7.2 Swing容器 412
10.7.3 Swing组件 418
10.8 本章小结 420
第11章 Java Applet 421
11.1 Java Applet简介 422
11.2 Applet和JApplet 422
11.2.1 Applet和JApplet类 422
11.2.2 生命周期方法 423
11.3 Applet多媒体 427
11.3.1 绘制图形 428
11.3.2 播放声音 437
11.4 Applet用户交互 438
11.5 Applet运行方式 440
11.5.1 Applet嵌入Web 440
11.5.2 Applet传递参数 442
11.6 本章小结 444
第12章 开发JDBC数据库 445
12.1 JDBC 446
12.1.1 JDBC简介 446
12.1.2 JDBC API 446
12.2 数据库连接 449
12.2.1 JDBC-ODBC驱动器 450
12.2.2 JDBC驱动器 460
12.2.3 使用JDBC连接多种数据库 464
12.2.4 获取数据库信息 465
12.3 访问数据库 467
12.3.1 SQL语句 468
12.3.2 访问数据库 469
12.4 更新数据库 471
12.4.1 添加记录 471
12.4.2 删除记录 474
12.4.3 修改记录 475
12.5 数据查询系统实例 477
12.6 本章小结 482
第13章 Java多线程开发 484
13.1 线程概念 485
13.2 创建线程 485
13.2.1 继承Thread类创建线程 486
13.2.2 使用Runnable接口实现线程 492
13.3 线程周期 495
13.4 线程调度 498
13.4.1 join()方法 498
13.4.2 sleep()方法 500
13.4.3 yield()方法 501
13.4.4 优先级 503
13.5 线程同步 505
13.5.1 死锁 505
13.5.2 线程同步 506
13.6 本章小结 508
第14章 Java网络通信 509
14.1 Java网络通信概述 510
14.2 InetAddress和URL 510
14.2.1 InetAddress 510
14.2.2 URL 516
14.3 Socket和ServerSocket 523
14.3.1 Socket 523
14.3.2 ServerSocket 527
14.4 聊天程序实例 531
14.5 本章小结 536
第15章 Java XML技术 537
15.1 XML概述 538
15.1.1 什么是XML 538
15.1.2 XML和HTML的区别 538
15.1.3 XML的优势和应用场合 539
15.2 使用DOM技术 540
15.2.1 获取XML生成DOM 541
15.2.2 DOM文档 542
15.3 使用SAX技术 548
15.3.1 SAX技术 548
15.3.2 获取XML文档 548
15.4 本章小结 550
实战篇 551
第16章 Java学生管理系统 551
16.1 系统概述 552
16.2 系统设计 552
16.2.1 系统功能设计 552
16.2.2 业务逻辑设计 554
16.2.3 数据库设计 557
16.3 系统实现 558
16.3.1 创建数据库 559
16.3.2 实现GUI界面 560
16.3.3 实现代码 560
16.3.4 测试 574
16.3.5 需要改进之处 575
16.4 本章小结 576
第1章 Java安装和配置 1
实例1-1 HelloWorld程序 18
第2章 Java数据类型 25
实例2-1 整数计算 27
实例2-2 浮点数计算 28
实例2-3 字符计算 29
实例2-4 字符串计算 31
实例2-5 布尔类型计算 32
实例2-6 使用变量 36
实例2-7 使用变量 38
实例2-8 为变量动态赋值 39
实例2-9 判断年龄 42
实例2-10 使用常量 43
实例2-11 自动数据库类型转换 46
实例2-12 强制数据类型转换 47
实例2-13 计算圆面积周长 49
第3章 Java运算符和表达式 51
实例3-1 Java语言四则运算 53
实例3-2 判断奇偶性 55
实例3-3 自加自减运算 56
实例3-4 比较大小 58
实例3-5 判断成绩 60
实例3-6 移位运算 62
实例3-7 赋值运算 63
实例3-8 判断成绩是否及格 65
实例3-9 连接字符串 66
实例3-10 判断运算结果 68
第4章 Java基本语句 70
实例4-1 Java程序基本结构 72
实例4-2 注释实例程序 74
实例4-3 顺序语句 75
实例4-4 使用条件语句 78
实例4-5 判断是否为奇数 80
实例4-6 判断一周哪一天 82
实例4-7 显示日期 84
实例4-8 输出星期的英文 86
实例4-9 统计指定数内的偶数 88
实例4-10 二维坐标 90
实例4-11 金字塔星号 91
实例4-12 while循环语句实例 93
实例4-13 do...while语句 95
实例4-14 break语句实例 96
实例4-15 continue语句实例 98
实例4-16 return返回表达式 100
实例4-17 return语句返回值 101
实例4-18 return返回空值 103
实例4-19 跳转语句比较 104
第5章 Java数组和字符串 107
实例5-1 为数组赋值 110
实例5-2 输出星期 111
实例5-3 输出锯齿数组 114
实例5-4 为二维数组赋值 116
实例5-5 复制数组 118
实例5-6 数组排序 119
实例5-7 创建String对象 122
实例5-8 读取年份 124
实例5-9 反向输出 126
实例5-10 大小写转换 127
实例5-11 截取英文 130
实例5-12 截取单词 131
实例5-13 字节转换 132
实例5-14 分割句子 133
实例5-15 比较字符串 136
实例5-16 比较字符串顺序 137
实例5-17 计算@符号位置 140
实例5-18 替换字符 141
实例5-19 比较身份证号和生日 142
实例5-20 查看字符串长度和空间 144
实例5-21 修改邮件地址 146
第6章 Java面向对象编程 148
实例6-1 添加类的构造方法初始化并初始化类属性 152
实例6-2 带参数的构造方法 155
实例6-3 构造方法的重载 156
实例6-4 打印电脑配置 158
实例6-5 修改电脑配置 160
实例6-6 计算圆面积 162
实例6-7 矩形面积 164
实例6-8 获取系统时间 165
实例6-9 显示时间 167
实例6-10 调用类成员 169
实例6-11 使用外部类 172
实例6-12 汽车类 174
实例6-13 类封装数据 176
第7章 深入Java面向对象编程 179
实例7-1 简单继承 181
实例7-2 继承私有属性 184
实例7-3 类扩展 186
实例7-4 计算平方根 190
实例7-5 字符操作 192
实例7-6 加法计算 193
实例7-7 一般覆盖 195
实例7-8 调用被覆盖方法 197
实例7-9 执行父类构造 199
实例7-10 计算工资 202
实例7-11 在抽象类中实现方法 204
实例7-12 使用接口 207
实例7-13 定义接口变量 208
实例7-14 继承多个接口 210
实例7-15 接口扩展 211
实例7-16 打印个人资料 217
实例7-17 使用包 227
第8章 Java异常处理 230
实例8-1 处理数据类型转换异常 236
实例8-2 捕获所有异常 239
实例8-3 多异常捕获实例 242
实例8-4 多异常同时捕获实例 244
实例8-5 finally语句 247
实例8-6 finally中的return语句 249
实例8-7 抛出异常 251
实例8-8 方法体抛出异常 253
实例8-9 创建异常类 259
第9章 Java输入输出流 264
实例9-1 文件操作 271
实例9-2 以字节流方式读取文件 278
实例9-3 以字节流形式写文件 281
实例9-4 复制和重命名文件 283
实例9-5 以缓中流方式读取字节数据 287
实例9-6 以缓冲流方式写数据 290
实例9-7 使用flush方法刷新缓中区 291
实例9-8 以缓中流方式读写文件 292
实例9-9 数据输入字节流 296
实例9-10 数据输出字节流 298
实例9-11 统计字节大小 299
实例9-12 文件输入输出 301
实例9-13 读取键盘输入 302
实例9-14 写入文本 304
实例9-15 修改文件 305
实例9-16 以字符流方式读取文件 313
实例9-17 读取文件中的指定数据 314
实例9-18 写字符数组数据 317
实例9-19 写入数组中指定位置和长度的数据元素到文件 318
实例9-20 写入整型数据 319
实例9-21 直接写入字符串到指定文件 320
实例9-22 读取单个字符 323
实例9-23 读取指定字符 324
实例9-24 读取一行字符 325
实例9-25 写入字符数组 327
实例9-26 写入单个字符 328
实例9-27 写入指定字符串 329
实例9-28 以指定编码读取文件 333
实例9-29 读取文件指定字符 334
实例9-30 写身份证号码 336
实例9-31 写字符数组 338
实例9-32 写多个字符串 339
实例9-33 获取文件列表 341
第10章 Java图形用户界面 344
实例10-1 第1个Java窗体 350
实例10-2 添加组件 353
实例10-3 为窗体添加关闭事件 354
实例10-4 FlowLayout布局窗体 357
实例10-5 BorderLayout布局窗体 360
实例10-6 CardLayout布局窗体 362
实例10-7 GridLayout布局窗体 365
实例10-8 GridBagLayout布局窗体 369
实例10-9 用户登录界面Java实现 371
实例10-10 按钮单击事件 376
实例10-11 外部事件处理器实现 377
实例10-12 当前类事件处理器实现 379
实例10-13 匿名类事件处理器实现 381
实例10-14 拖动和移动鼠标 384
实例10-15 键盘按键 386
实例10-16 登录界面 388
实例10-17 按钮组件实例 393
实例10-18 使用复选框组件 396
实例10-19 使用文本标签 399
实例10-20 使用列表框组件 402
实例10-21 使用单行文本和多行文本域组件 405
实例10-22 简易记事本 409
实例10-23 Swing容器实例 414
实例10-24 中间层容器实例 416
实例10-25 Swing组件实例 418
第11章 Java Applet 421
实例11-1 JApplet生命周期方法 424
实例11-2 绘制图形 428
实例11-3 绘制人形 430
实例11-4 绘制人形外框 433
实例11-5 绘制图像 435
实例11-6 Applet用户交互实例 438
实例11-7 在Web页面运行Applet 441
实例11-8 Web页面向Applet传递参数 443
第12章 开发JDBC数据库 445
实例12-1 使用JDBC-ODBC连接Access数据库 453
实例12-2 JDBC-ODBC连接MySQL数据库 458
实例12-3 JDBC数据库查询 462
实例12-4 获取数据库信息 465
实例12-5 校验用户登录 469
实例12-6 添加书籍 472
实例12-7 删除书籍 474
实例12-8 修改书籍信息 476
实例12-9 简易图书查询实例 477
第13章 Java多线程开发 484
实例13-1 多线程编程实现 487
实例13-2 多线程编程 490
实例13-3 输出时间 493
实例13-4 实现生命周期 496
实例13-5 join()方法 498
实例13-6 实现电子钟 500
实例13-7 yield()方法实例 502
实例13-8 比较优先级 504
实例13-9 线程同步 506
第14章 Java网络通信 509
实例14-1 获取网络IP地址 511
实例14-2 获取本地IP地址 513
实例14-3 获取主机名 515
实例14-4 获取URL信息 517
实例14-5 获取连接对象 518
实例14-6 获取资源 520
实例14-7 获取连接对象资源 522
实例14-8 Socket连接服务器端 525
实例14-9 返回服务器端信息 528
实例14-10 客户端服务端的单向通信 529
实例14-11 GUI界面聊天程序 532
第15章 Java XML技术 537
实例15-1 获取XML文档信息 543
实例15-2 获取XML 546
实例15-3 获取XML文档 548
第16章 Java学生管理系统 551
实例16-1 学生管理系统 560