第1章 初识Java 1
1.1 Java简介 1
1.1.1 什么是Java 1
1.1.2 Java的版本 2
1.1.3 Java API文档 3
1.2 搭建Java环境 4
1.2.1 下载JDK 4
1.2.2 配置JDK环境 6
1.3 第一个Java程序 9
1.4 Eclipse开发环境 10
1.4.1 Eclipse简介 11
1.4.2 下载Eclipse 11
1.4.3 Eclipse的配置与启动 13
1.4.4 Eclipse工作台 14
1.4.5 导入项目文件 14
1.5 Eclipse的使用 15
1.5.1 创建Java项目 15
1.5.2 创建Java类文件 16
1.5.3 使用编辑器编写程序代码 17
1.5.4 运行Java程序 19
1.6 程序调试 19
1.7 小结 21
第2章 Java语言基础 22
2.1 代码注释与编码规范 22
2.1.1 代码注释 22
2.1.2 编码规范 23
2.2 变量与常量 24
2.2.1 标识符与关键字 24
2.2.2 变量 25
2.2.3 常量 26
2.3 基本数据类型 26
2.3.1 整数类型 26
2.3.2 浮点类型 29
2.3.3 字符类型 31
2.3.4 布尔类型 32
2.4 数据类型转换 33
2.4.1 隐式转换 33
2.4.2 显式转换 34
2.5 运算符 35
2.5.1 赋值运算符 35
2.5.2 算术运算符 36
2.5.3 自增和自减运算符 37
2.5.4 关系运算符 38
2.5.5 逻辑运算符 39
2.5.6 位运算符 40
2.5.7 复合赋值运算符 44
2.5.8 三元运算符 45
2.5.9 圆括号 46
2.5.10 运算符优先级 46
2.6 小结 47
第3章 流程控制 48
3.1 程序结构 48
3.2 条件语句 49
3.2.1 if条件语句 49
3.2.2 switch多分支语句 56
3.3 循环语句 60
3.3.1 while循环语句 60
3.3.2 do...while循环语句 61
3.3.3 while与do...while比较 62
3.3.4 for循环语句 62
3.3.5 foreach语句 64
3.3.6 循环语句的嵌套 65
3.4 跳转语句 66
3.4.1 break语句 66
3.4.2 continue语句 69
3.5 小结 70
第4章 数组 71
4.1 数组的概述 71
4.2 一维数组 71
4.2.1 创建一维数组 71
4.2.2 初始化一维数组 73
4.2.3 获取数组长度 73
4.2.4 使用一维数组 74
4.3 二维数组 75
4.3.1 创建二维数组 75
4.3.2 初始化二维数组 76
4.3.3 使用二维数组 77
4.4 数组的基本操作 79
4.4.1 遍历数组 79
4.4.2 填充和批量替换数组元素 80
4.4.3 复制数组 81
4.5 数组的排序 83
4.5.1 算法:冒泡排序 83
4.5.2 算法:选择排序 85
4.5.3 Arrays.Sort()方法 87
4.6 小结 88
第5章 字符串 89
5.1 String类 89
5.1.1 声明字符串 89
5.1.2 创建字符串 89
5.2 连接字符串 91
5.2.1 连接字符串 91
5.2.2 连接其他数据类型 92
5.3 提取字符串信息 93
5.3.1 获取字符串长度 93
5.3.2 获取指定的字符 94
5.3.3 获取子字符串索引位置 95
5.3.4 判断字符串首尾内容 98
5.3.5 获取字符数组 101
5.3.6 判断子字符串是否存在 101
5.4 字符串的操作 102
5.4.1 截取字符串 102
5.4.2 字符串替换 103
5.4.3 字符串分割 105
5.4.4 大小写转换 108
5.4.5 去除空白内容 109
5.4.6 比较字符串是否相等 110
5.4.7 格式化字符串 113
5.5 可变字符串 118
5.5.1 StringBuffer类的常用方法 119
5.5.2 StringBuilder类的使用方法 122
5.5.3 StringBuffer、StringBuilder、String之间的关系 123
5.6 小结 125
第6章 面向对象编程基础 126
6.1 面向对象概述 126
6.1.1 对象 126
6.1.2 类 127
6.1.3 面向对象程序设计的特点 128
6.2 类与对象 130
6.2.1 成员变量 130
6.2.2 成员方法 131
6.2.3 构造方法 135
6.2.4 局部变量 137
6.2.5 局部变量的有效范围 137
6.2.6 对象的创建 138
6.2.7 访问对象的属性和行为 139
6.2.8 对象的销毁 141
6.2.9 this关键字 141
6.3 static关键字 143
6.3.1 静态变量 144
6.3.2 静态常量 146
6.3.3 静态方法 147
6.3.4 静态代码块 148
6.4 类的主方法 149
6.5 小结 150
第7章 面向对象核心技术 151
7.1 类的封装 151
7.2 类的继承 155
7.2.1 extends关键字 155
7.2.2 方法的重写 156
7.2.3 所有类的父类——Object类 159
7.3 类的多态 161
7.3.1 方法的重载 161
7.3.2 向上转型 163
7.3.3 向下转型 165
7.3.4 instanceof关键字 166
7.4 抽象类与接口 167
7.4.1 抽象类与抽象方法 168
7.4.2 接口的声明及实现 170
7.4.3 多重继承 172
7.4.4 区分抽象类与接口 173
7.5 访问控制 174
7.5.1 访问控制符 174
7.5.2 Java类包 175
7.5.3 final关键字 177
7.6 内部类 181
7.6.1 成员内部类 182
7.6.2 局部内部类 186
7.6.3 匿名内部类 187
7.6.4 静态内部类 187
7.6.5 内部类的继承 188
7.7 小结 189
第8章 异常处理 190
8.1 异常概述 190
8.2 异常的分类 191
8.2.1 系统错误——Error 192
8.2.2 异常——Exception 192
8.3 捕捉处理异常 195
8.3.1 try...catch代码块 195
8.3.2 finally代码块 198
8.4 在方法中抛出异常 198
8.4.1 使用throws关键字抛出异常 199
8.4.2 使用throw关键字抛出异常 200
8.5 自定义异常 201
8.6 异常的使用原则 202
8.7 小结 203
第9章 Java常用类 204
9.1 包装类 204
9.1.1 Integer类 205
9.1.2 Double类 207
9.1.3 Boolean类 209
9.1.4 Character类 210
9.1.5 Number类 211
9.2 Math类 212
9.2.1 Math类概述 212
9.2.2 常用数学运算方法 212
9.3 随机数 217
9.3.1 Math.random()方法 217
9.3.2 Random类 219
9.4 日期时间类 221
9.4.1 Date类 221
9.4.2 Calendar类 224
9.5 小结 227
第10章 集合类 228
10.1 集合类概述 228
10.2 Collection接口 228
10.3 List集合 229
10.3.1 List接口 229
10.3.2 List接口的实现类 229
10.3.3 Iterator迭代器 231
10.4 Set集合 231
10.4.1 Set接口 232
10.4.2 Set接口的实现类 232
10.5 Map集合 234
10.5.1 Map接口 234
10.5.2 Map接口的实现类 234
10.6 集合的使用场合 236
10.7 小结 236
第11章 枚举与泛型 237
11.1 枚举 237
11.1.1 使用枚举类型设置常量 237
11.1.2 深入了解枚举类型 239
11.1.3 使用枚举类型的优势 244
11.2 泛型 245
11.2.1 回顾“向上转型”与“向下转型” 245
11.2.2 定义泛型类 246
11.2.3 泛型的常规用法 247
11.2.4 泛型的高级用法 250
11.2.5 泛型总结 253
11.3 小结 253
第12章 Swing程序设计 254
12.1 Swing概述 254
12.1.1 Swing特点 254
12.1.2 Swing包 255
12.1.3 常用Swing组件概述 255
12.2 常用窗体 256
12.2.1 JFrame窗体 256
12.2.2 JDialog对话框窗体 258
12.3 常用布局管理器 259
12.3.1 绝对布局 260
12.3.2 流布局(FlowLayout)管理器 261
12.3.3 BorderLayout边界布局管理器 262
12.3.4 网格布局(GridLayout)管理器 264
12.4 常用面板 265
12.4.1 JPanel面板 265
12.4.2 JScrollPane滚动面板 266
12.5 标签组件与图标 267
12.5.1 JLabel标签组件 267
12.5.2 图标的使用 268
12.6 文本组件 271
12.6.1 JTextField文本框组件 271
12.6.2 JPasswordField密码框组件 272
12.6.3 JTextArea文本域组件 273
12.7 按钮组件 274
12.7.1 JButton按钮组件 274
12.7.2 JRadioButton单选按钮组件 275
12.7.3 JCheckBox复选框组件 278
12.8 列表组件 279
12.8.1 JComboBox下拉列表框组件 279
12.8.2 JList列表框组件 281
12.9 常用事件监听器 283
12.9.1 监听事件简介 283
12.9.2 动作事件监听器 283
12.9.3 焦点事件监听器 285
12.10 小结 286
第13章 高级事件处理 287
13.1 键盘事件 287
13.2 鼠标事件 289
13.3 窗体事件 291
13.3.1 捕获窗体焦点变化事件 291
13.3.2 捕获窗体状态变化事件 292
13.3.3 捕获其他窗体事件 294
13.4 选项事件 296
13.5 小结 298
第14章 I/O(输入/输出) 299
14.1 流概述 299
14.2 输入/输出流 300
14.2.1 输入流 300
14.2.2 输出流 301
14.3 File类 303
14.3.1 创建File对象 303
14.3.2 文件操作 303
14.3.3 文件夹操作 306
14.4 文件输入/输出流 308
14.4.1 FileInputStream类与FileOutputStream类 308
14.4.2 FileReader类与FileWriter类 309
14.5 带缓冲的输入/输出流 311
14.5.1 BufferedInputStream类与BufferedOutputStream类 311
14.5.2 BufferedReader类与BufferedWriter类 313
14.6 数据输入/输出流 315
14.7 小结 318
第15章 反射 319
15.1 Class类与Java反射 319
15.1.1 Class类 319
15.1.2 获取构造方法 322
15.1.3 获取成员变量 325
15.1.4 获取方法 328
15.2 Annotation注解 331
15.2.1 内置注解 331
15.2.2 自定义注解 332
15.3 小结 335
第16章 多线程 336
16.1 线程简介 336
16.2 实现线程的两种方式 337
16.2.1 继承Thread类 337
16.2.2 实现Runnable接口 339
16.3 线程的生命周期 341
16.4 操作线程的方法 342
16.4.1 线程的休眠 342
16.4.2 线程的加入 344
16.4.3 线程的中断 345
16.5 线程的优先级 347
16.6 线程的同步 349
16.6.1 线程安全 349
16.6.2 线程同步机制 350
16.7 线程的暂停与恢复 352
16.8 小结 354
第17章 网络通信 355
17.1 网络程序设计基础 355
17.1.1 局域网与因特网 355
17.1.2 网络协议 356
17.1.3 端口和套接字 357
17.2 IP地址封装 357
17.3 TCP程序设计 359
17.3.1 ServerSocket服务器端 359
17.3.2 Socket客户端 360
17.3.3 TCP网络程序实例 361
17.4 UDP程序设计 364
17.4.1 使用Java进行UDP程序设计 364
17.4.2 DatagramPacket类 364
17.4.3 DatagramSocket类 365
17.4.4 UDP网络程序实例 366
17.5 多线程聊天室 370
17.6 小结 376
第18章 使用JDBC操作数据库 377
18.1 JDBC概述 377
18.1.1 数据库基础 377
18.1.2 JDBC简介 379
18.2 JDBC中常用的类和接口 379
18.2.1 DriverManager类 379
18.2.2 Connection接口 380
18.2.3 Statement接口 381
18.2.4 PreparedStatement接口 382
18.2.5 CallableStatement接口 382
18.2.6 ResultSet接口 383
18.3 数据库操作 384
18.3.1 连接数据库 384
18.3.2 数据查询 386
18.3.3 动态查询 388
18.3.4 添加、修改、删除记录 390
18.3.5 调用存储过程 393
18.4 小结 394
第19章 Swing高级组件 395
19.1 高级组件面板 395
19.1.1 JSplitPane分割面板 395
19.1.2 JTabbedPane选项卡面板 398
19.1.3 桌面面板和内部窗体 402
19.2 菜单 406
19.2.1 创建JMenuBar菜单栏 406
19.2.2 创建JPopupMenu弹出式菜单 411
19.3 JToolBar工具栏 412
19.4 文件选择器 413
19.4.1 JFileChooser文件选择对话框 413
19.4.2 FileFilter文件过滤器 415
19.5 JProgressBar进度条 416
19.6 JTable表格组件 418
19.6.1 使用JTable创建表格 418
19.6.2 表格的常用操作方法 418
19.6.3 使用表格模型创建表格 421
19.6.4 维护表格模型 422
19.7 小结 425
第20章 AWT绘图 427
20.1 Java绘图基础 427
20.1.1 Graphics类 427
20.1.2 Graphics2D类 427
20.1.3 Canvas类 428
20.2 绘制几何图形 428
20.3 设置颜色与画笔 431
20.3.1 设置颜色 431
20.3.2 设置画笔 433
20.4 绘制文本 435
20.4.1 设置字体 435
20.4.2 绘制文字 435
20.5 图像处理 436
20.5.1 绘制图像 437
20.5.2 图像缩放 438
20.5.3 图像翻转 440
20.5.4 图像旋转 444
20.5.5 图像倾斜 445
20.6 小结 446
第21章 一起来画画 447
21.1 开发背景 447
21.2 系统功能设计 447
21.2.1 系统功能结构图 447
21.2.2 业务流程图 448
21.3 搭建项目 448
21.3.1 系统开发环境要求 448
21.3.2 创建新项目 449
21.3.3 导入资源 452
21.4 创建可以显示的窗体 456
21.5 创建画板 461
21.6 添加鼠标画笔功能 464
21.7 添加工具栏 467
21.7.1 添加工具栏组件 467
21.7.2 实现调整画笔粗细功能 470
21.7.3 实现添加颜色功能 473
21.7.4 实现清除图像功能 476
21.7.5 实现绘制图形功能 478
21.7.6 实现保存图片功能 482
21.8 添加菜单栏 484
21.8.1 添加菜单栏组件 485
21.8.2 给菜单项添加单击事件 488
21.9 实现添加水印功能 491
21.10 添加鼠标图标效果 495
21.10.1 创建保存图标的包 495
21.10.2 实现更改鼠标图标功能 495
21.11 添加简笔画对照窗口 498
21.11.1 创建保存简笔画素材的包 498
21.11.2 创建显示简笔画的窗体 499
21.11.3 实现简笔画窗体与主窗体互相关联 501
21.12 让按钮变得更好看 504
21.13 一起来找茬 510
21.14 小结 512
第22章 明日彩票预测系统 513
22.1 开发背景 513
22.2 系统功能设计 514
22.2.1 系统功能结构图 514
22.2.2 系统业务流程图 514
22.3 系统开发必备 515
22.3.1 系统开发环境要求 515
22.3.2 创建明日彩票预测系统项目 515
22.4 数据库设计 516
22.4.1 数据库概述 516
22.4.2 数据表设计 517
22.5 登录窗体设计 518
22.5.1 登录窗体概述 518
22.5.2 设计登录窗体 518
22.5.3 登录功能的实现 524
22.6 主窗体设计 526
22.6.1 主窗体概述 526
22.6.2 主窗体基本布局 527
22.6.3 添加主窗体中的组件 532
22.6.4 实现数据库的连接 537
22.6.5 分页显示历届开奖信息 540
22.6.6 打开主窗体 552
22.7 号码走势对话框设计 554
22.7.1 号码走势对话框概述 554
22.7.2 创建号码走势对话框 555
22.7.3 创建第一位开奖号码走势面板 555
22.7.4 实现号码走势对话框功能 556
22.7.5 实现从主窗体向号码走势对话框的跳转功能 558
22.7.6 设计第一位开奖号码走势面板 560
22.7.7 获取第一位开奖号码走势数据 567
22.7.8 以折线图显示近10期开奖号码走势 571
22.8 随机选号对话框设计 580
22.8.1 随机选号对话框概述 580
22.8.2 添加随机选号对话框中的组件 581
22.8.3 实现显示开奖期数 582
22.8.4 实现从主窗体向随机选号对话框的跳转功能 584
22.8.5 随机选号和按要求选号的切换 585
22.8.6 机选选号功能的实现 591
22.8.7 按照指定要求选取彩票号码 595
22.8.8 指定按要求选号时的约束条件 600
22.8.9 彩票购买功能的实现 603
22.8.10 关闭随机选号对话框 606
22.9 一起来找茬 608
22.10 小结 609
第23章 小小五子棋 610
23.1 开发背景 610
23.2 系统功能设计 611
23.2.1 系统功能结构 611
23.2.2 系统业务流程 611
23.3 系统开发环境要求 612
23.4 项目目录结构预览 612
23.5 公共模块设计 612
23.5.1 定义用户类 612
23.5.2 定义棋盘模型类 613
23.6 界面模型设计 614
23.6.1 界面模型概述 614
23.6.2 设计主窗体 614
23.6.3 设计登录界面 616
23.6.4 绘制棋盘界面 617
23.6.5 实现单击鼠标落棋功能 621
23.6.6 实现游戏回放功能 622
23.6.7 实现自由更换背景功能 623
23.6.8 清屏动画的实现 623
23.7 通信模块设计 624
23.7.1 通信模块概述 624
23.7.2 信息识别功能的实现 625
23.7.3 实现发送/接收聊天信息功能 627
23.7.4 “悔棋”命令的实现 628
23.8 五子棋算法设计 629
23.9 人机对战设计 633
23.9.1 人机对战算法概述 633
23.9.2 计算机自动处理用户请求 633
23.9.3 计算机判断落棋点 634
23.9.4 计算机自动落棋 637
23.10 小结 638
第24章 企业进销存管理系统 639
24.1 开发背景 639
24.2 系统功能设计 639
24.2.1 系统功能结构图 639
24.2.2 系统业务流程图 640
24.3 数据库设计 641
24.3.1 数据库概述 641
24.3.2 设计数据表 641
24.4 项目中的组织结构 645
24.5 公共类设计 645
24.5.1 创建Item公共类 645
24.5.2 创建数据模型公共类 646
24.5.3 创建Dao公共类 649
24.6 系统主窗体概述 658
24.7 进货单模块设计 659
24.7.1 添加进货商品的空模板 660
24.7.2 显示指定供应商主营商品名称的下拉列表 661
24.7.3 更新进货商品详细信息 662
24.7.4 统计进货商品信息 663
24.7.5 进货商品入库功能的实现 664
24.8 销售单模块设计 667
24.8.1 初始化销售票号 667
24.8.2 添加销售商品信息 668
24.8.3 统计销售商品信息 668
24.8.4 商品销售功能的实现 670
24.9 库存盘点模块设计 671
24.9.1 显示所有库存商品信息 672
24.9.2 统计库存商品的损益数量 673
24.10 数据库备份与恢复模块设计 675
24.10.1 备份数据库 675
24.10.2 获取数据库备份文件 676
24.10.3 恢复数据库 677
24.11 小结 679
第25章 九宫格记忆网 680
25.1 开发背景 680
25.2 系统功能设计 680
25.2.1 系统功能结构 680
25.2.2 系统业务流程 681
25.3 系统开发环境要求 681
25.4 项目目录结构预览 682
25.5 数据库设计 682
25.5.1 数据库结构预览 682
25.5.2 数据表结构 683
25.6 公共类设计 684
25.6.1 编写数据库连接及操作类 684
25.6.2 编写保存分页代码的JavaBean 686
25.6.3 配置解决中文乱码的过滤器 687
25.6.4 编写实体类 688
25.7 主界面设计 689
25.7.1 主界面概述 689
25.7.2 采用DIV+CSS技术使页面内容居中 689
25.7.3 主界面的实现过程 690
25.8 用户模块设计 691
25.8.1 用户模块概述 691
25.8.2 实现Ajax重构功能 691
25.8.3 用户注册的实现 692
25.8.4 用户登录的实现 697
25.8.5 退出登录的实现 698
25.8.6 找回密码功能 698
25.9 显示日记列表模块设计 700
25.9.1 显示日记列表概述 700
25.9.2 展开和收缩图片功能 700
25.9.3 查看日记原图功能 702
25.9.4 对日记图片进行左转和右转 703
25.9.5 显示全部日记功能 704
25.9.6 查看个人日记功能 705
25.9.7 删除个人日记功能 706
25.10 写日记模块设计 707
25.10.1 写日记模块概述 707
25.10.2 填写日记信息的实现 707
25.10.3 预览日记图片功能 710
25.10.4 保存日记图片功能 713
25.11 社交模块设计 714
25.11.1 社交模块的概述 714
25.11.2 评论功能的实现 715
25.11.3 点赞功能的实现 716
25.12 小结 717
Java开发资源库使用说明 718