第1篇 基础知识 2
第1章 初识Java 2
1.1 Java简介 3
1.1.1什么是Java语言 3
1.1.2 Java的应用领域 3
1.1.3 Java的版本 4
1.1.4怎样学好Java 5
1.1.5 JavaAPI文档 6
1.2 Java语言的特性 7
1.2.1简单 7
1.2.2面向对象 7
1.2.3分布性 7
1.2.4可移植性 7
1.2.5解释型 8
1.2.6安全性 8
1.2.7健壮性 8
1.2.8多线程 8
1.2.9高性能 8
1.2.10动态 8
1.3搭建Java环境 9
1.3.1 JDK下载 9
1.3.2 Windows系统的JDK环境 11
1.4第一个Java程序 15
1.5小结 17
1.6实践与练习 17
第2章 熟悉Eclipse开发工具 18
2.1熟悉Eclipse 19
2.1.1 Eclipse简介 19
2.1.2下载Eclipse 19
2.1.3安装Eclipse的中文语言包 21
2.1.4 Eclipse的配置与启动 23
2.1.5 Eclipse工作台 24
2.1.6透视图与视图 25
2.1.7菜单栏 25
2.1.8工具栏 28
2.1.9“包资源管理器”视图 29
2.1.10“控制台”视图 30
2.2使用Eclipse 30
2.2.1创建Java项目 30
2.2.2创建Java类文件 30
2.2.3使用编辑器编写程序代码 31
2.2.4运行Java程序 34
2.3程序调试 34
2.4小结 36
2.5实践与练习 36
第3章Java语言基础 37
3.1 Java主类结构 38
3.1.1包声明 38
3.1.2声明成员变量和局部变量 39
3.1.3编写主方法 39
3.1.4导入API类库 39
3.2基本数据类型 39
3.2.1整数类型 40
3.2.2浮点类型 41
3.2.3字符类型 42
3.2.4布尔类型 43
3.3变量与常量 43
3.3.1标识符和关键字 44
3.3.2声明变量 44
3.3.3声明常量 45
3.3.4变量的有效范围 46
3.4运算符 47
3.4.1赋值运算符 48
3.4.2算术运算符 49
3.4.3自增和自减运算符 50
3.4.4比较运算符 50
3.4.5逻辑运算符 51
3.4.6位运算符 52
3.4.7三元运算符 54
3.4.8运算符优先级 54
3.5数据类型转换 55
3.5.1隐式类型转换 56
3.5.2显式类型转换 57
3.6代码注释与编码规范 58
3.6.1代码注释 58
3.6.2编码规范 59
3.7小结 60
3.8实践与练习 60
第4章 流程控制 61
4.1复合语句 62
4.2条件语句 62
4.2.1 if条件语句 63
4.2.2 switch多分支语句 67
4.3循环语句 69
4.3.1 while循环语句 69
4.3.2 do……while循环语句 70
4.3.3 for循环语句 71
4.4小结 74
4.5实践与练习 74
第5章 字符串 75
5.1 String类 76
5.1.1声明字符串 76
5.1.2创建字符串 76
5.2连接字符串 77
5.2.1连接多个字符串 78
5.2.2连接其他数据类型 78
5.3获取字符串信息 79
5.3.1获取字符串长度 80
5.3.2字符串查找 80
5.3.3获取指定索引位置的字符 81
5.4字符串操作 82
5.4.1获取子字符串 82
5.4.2去除空格 83
5.4.3字符串替换 84
5.4.4判断字符串的开始与结尾 85
5.4.5判断字符串是否相等 86
5.4.6按字典顺序比较两个字符串 87
5.4.7字母大小写转换 88
5.4.8字符串分割 89
5.5格式化字符串 91
5.5.1日期和时间字符串格式化 91
5.5.2常规类型格式化 94
5.6使用正则表达式 95
5.7字符串生成器 97
5.8小结 99
5.9实践与练习 100
第6章 数组 101
6.1数组概述 102
6.2一维数组的创建及使用 102
6.2.1创建一维数组 102
6.2.2初始化一维数组 103
6.2.3使用一维数组 104
6.3二维数组的创建及使用 104
6.3.1二维数组的创建 105
6.3.2二维数组初始化 106
6.3.3使用二维数组 106
6.4数组的基本操作 107
6.4.1遍历数组 107
6.4.2填充替换数组元素 108
6.4.3对数组进行排序 110
6.4.4复制数组 111
6.4.5数组查询 112
6.5数组排序算法 114
6.5.1冒泡排序 114
6.5.2直接选择排序 116
6.5.3反转排序 118
6.6小结 120
6.7实践与练习 121
第7章 类和对象 122
7.1面向对象概述 123
7.1.1对象 123
7.1.2类 124
7.1.3封装 125
7.1.4继承 125
7.1.5多态 126
7.2类 127
7.2.1成员变量 127
7.2.2成员方法 128
7.2.3权限修饰符 129
7.2.4局部变量 130
7.2.5局部变量的有效范围 130
7.2.6 this关键字 131
7.3类的构造方法 132
7.4静态变量、常量和方法 133
7.5类的主方法 135
7.6对象 137
7.6.1对象的创建 137
7.6.2访问对象的属性和行为 138
7.6.3对象的引用 140
7.6.4对象的比较 141
7.6.5对象的销毁 142
7.7小结 143
7.8实践与练习 143
第8章 包装类 144
8.1 Integer 145
8.2 Boolean 147
8.3 Byte 149
8.4 Character 150
8.5 Double 151
8.6 Number 153
8.7小结 153
8.8实践与练习 153
第9章 数字处理类 154
9.1数字格式化 155
9.2数学运算 157
9.2.1 Math类 158
9.2.2常用数学运算方法 158
9.3随机数 162
9.3.1 Math.random()方法 162
9.3.2 Random类 164
9.4大数字运算 165
9.4.1 BigInteger 166
9.4.2 BigDecimal 168
9.5小结 171
9.6实践与练习 171
第2篇 核心技术 174
第10章 接口、继承与多态 174
10.1类的继承 175
10.2 Object类 178
10.3对象类型的转换 180
10.3.1向上转型 180
10.3.2向下转型 181
10.4使用instanceof操作符判断对象类型 182
10.5方法的重载 184
10.6多态 187
10.7抽象类与接口 189
10.7.1抽象类 189
10.7.2接口 190
10.8小结 193
10.9实践与练习 193
第11章 类的高级特性 194
11.1 Java类包 195
11.1.1类名冲突 195
11.1.2完整的类路径 195
11.1.3创建包 196
11.1.4导入包 197
11.2 final变量 199
11.3 final方法 202
11.4 final类 203
11.5内部类 204
11.5.1成员内部类 204
11.5.2局部内部类 208
11.5.3匿名内部类 209
11.5.4静态内部类 210
11.5.5内部类的继承 211
11.6小结 211
11.7实践与练习 211
第12章 异常处理 212
12.1异常概述 213
12.2处理程序异常错误 213
12.2.1错误 214
12.2.2捕捉异常 214
12.3 Java常见异常 216
12.4自定义异常 217
12.5在方法中抛出异常 218
12.5.1使用throws关键字抛出异常 218
12.5.2使用throw关键字抛出异常 219
12.6运行时异常 221
12.7异常的使用原则 221
12.8小结 222
12.9实践与练习 222
第13章Swing程序设计 223
13.1 Swing概述 224
13.1.1 Swing特点 224
13.1.2 Swing包 224
13.1.3常用Swing组件概述 225
13.2常用窗体 225
13.2.1 JFrame窗体 225
13.2.2 JDialog窗体 227
13.3标签组件与图标 229
13.3.1标签的使用 229
13.3.2图标的使用 230
13.4常用布局管理器 232
13.4.1绝对布局 233
13.4.2流布局管理器 234
13.4.3边界布局管理器 235
13.4.4网格布局管理器 237
13.5常用面板 238
13.5.1 JPanel面板 238
13.5.2 JScrollPane面板 239
13.6按钮组件 240
13.6.1提交按钮组件 240
13.6.2单选按钮组件 242
13.6.3复选框组件 243
13.7列表组件 244
13.7.1下拉列表框组件 244
13.7.2列表框组件 246
13.8文本组件 248
13.8.1文本框组件 248
13.8.2密码框组件 249
13.8.3文本域组件 249
13.9常用事件监听器 250
13.9.1监听事件简介 251
13.9.2动作事件监听器 251
13.9.3焦点事件监听器 253
13.10小结 254
13.11实践与练习 254
第14章 集合类 255
14.1集合类概述 256
14.2 Collection接口 256
14.3 List集合 257
14.3.1 List接口 257
14.3.2 List接口的实现类 258
14.4 Set集合 259
14.5 Map集合 261
14.5.1 Map接口 261
14.5.2 Map接口的实现类 262
14.6小结 264
14.7实践与练习 264
第15章I/O(输入/输出) 265
15.1流概述 266
15.2输入/输出流 266
15.2.1输入流 266
15.2.2输出流 268
15.3 File类 269
15.3.1文件的创建与删除 269
15.3.2获取文件信息 270
15.4文件输入/输出流 272
15.4.1 FileInputStream与FileOutputStream类 272
15.4.2 FileReader和FileWriter类 273
15.5带缓存的输入/输出流 275
15.5.1 BufferedInputStream与BufferedOutputStream类 276
15.5.2 BufferedReader与BufferedWriter类 276
15.6数据输入/输出流 278
15.7 ZIP压缩输入/输出流 279
15.7.1压缩文件 280
15.7.2解压缩ZIP文件 281
15.8小结 283
15.9实践与练习 283
第16章 反射 284
16.1 Class类与Java反射 285
16.1.1访问构造方法 286
16.1.2访问成员变量 289
16.1.3访问方法 291
16.2使用Annotation功能 294
16.2.1定义Annotation类型 294
16.2.2访问Annotation信息 297
16.3小结 300
16.4实践与练习 300
第17章 枚举类型与泛型 301
17.1枚举类型 302
17.1.1使用枚举类型设置常量 302
17.1.2深入了解枚举类型 304
17.1.3使用枚举类型的优势 309
17.2泛型 310
17.2.1回顾“向上转型”与“向下转型” 310
17.2.2定义泛型类 311
17.2.3泛型的常规用法 312
17.2.4泛型的高级用法 316
17.2.5泛型总结 318
17.3小结 318
17.4实践与练习 318
第18章 多线程 319
18.1线程简介 320
18.2实现线程的两种方式 320
18.2.1继承Thread类 321
18.2.2实现Runnable接口 322
18.3线程的生命周期 324
18.4操作线程的方法 326
18.4.1线程的休眠 326
18.4.2线程的加入 328
18.4.3线程的中断 329
18.4.4线程的礼让 331
18.5线程的优先级 332
18.6线程同步 334
18.6.1线程安全 334
18.6.2线程同步机制 335
18.7小结 337
18.8实践与练习 338
第19章 网络通信 339
19.1网络程序设计基础 340
19.1.1局域网与因特网 340
19.1.2网络协议 340
19.1.3端口和套接字 341
19.2 TCP程序设计基础 342
19.2.1 InetAddress类 342
19.2.2 ServerSocket类 343
19.2.3 TCP网络程序 344
19.3 UDP程序设计基础 348
19.3.1 DatagramPacket类 348
19.3.2 DatagramSocket类 349
19.3.3 UDP网络程序 349
19.4小结 352
19.5实践与练习 353
第20章 数据库操作 354
20.1数据库基础知识 355
20.1.1什么是数据库 355
20.1.2数据库的种类及功能 356
20.1.3 SQL语言 356
20.2 JDBC概述 358
20.2.1 JDBC-ODBC桥 358
20.2.2 JDBC技术 359
20.2.3 JDBC驱动程序的类型 359
20.3 JDBC中常用的类和接口 359
20.3.1 Connection接口 360
20.3.2 Statement接口 360
20.3.3 PreparedStatement接口 361
20.3.4 DriverManager类 361
20.3.5 ResultSet接口 361
20.4数据库操作 362
20.4.1连接数据库 363
20.4.2向数据库发送SQL语句 364
20.4.3处理查询结果集 364
20.4.4顺序查询 365
20.4.5模糊查询 366
20.4.6预处理语句 367
20.4.7添加、修改、删除记录 369
20.5小结 371
20.6实践与练习 371
第3篇 高级应用 374
第21章Swing表格组件 374
21.1利用JTable类直接创建表格 375
21.1.1创建表格 375
21.1.2定制表格 377
21.1.3操纵表格 381
21.2表格模型与表格 383
21.2.1利用表格模型创建表格 383
21.2.2维护表格模型 385
21.3提供行标题栏的表格 387
21.4小结 392
21.5实践与练习 392
第22章Swing树组件 393
22.1简单的树 394
22.2处理选中节点事件 395
22.3遍历树节点 397
22.4定制树 399
22.5维护树模型 402
22.6处理展开节点事件 404
22.7小结 406
22.8实践与练习 406
第23章Swing其他高级组件 407
23.1高级组件面板 408
23.1.1分割面板 408
23.1.2选项卡面板 411
23.1.3桌面面板和内部窗体 413
23.2菜单 417
23.2.1创建菜单栏 417
23.2.2创建弹出式菜单 419
23.2.3定制个性化菜单 420
23.3工具栏 424
23.4文件选择器 426
23.4.1文件选择对话框 426
23.4.2使用文件过滤器 427
23.5进度条 428
23.6系统托盘 430
23.7桌面集成控件 431
23.8小结 432
23.9实践与练习 432
第24章 高级布局管理器 433
24.1箱式布局管理器 434
24.2卡片布局管理器 436
24.3网格组布局管理器 439
24.4弹簧布局管理器 445
24.4.1使用弹簧布局管理器 445
24.4.2使用弹簧和支柱 448
24.4.3利用弹簧控制组件大小 449
24.5小结 450
24.6实践与练习 450
第25章 高级事件处理 451
25.1键盘事件 452
25.2鼠标事件 454
25.3窗体事件 456
25.3.1捕获窗体焦点变化事件 456
25.3.2捕获窗体状态变化事件 457
25.3.3捕获其他窗体事件 459
25.4选项事件 461
25.5表格模型事件 462
25.6小结 465
25.7实践与练习 465
第26章AWT绘图与音频播放 466
26.1 Java绘图 467
26.1.1 Graphics 467
26.1.2 Graphics2D 467
26.2绘制图形 467
26.3绘图颜色与笔画属性 471
26.3.1设置颜色 471
26.3.2笔画属性 472
26.4绘制文本 473
26.4.1设置字体 474
26.4.2显示文字 474
26.5绘制图片 475
26.6图像处理 477
26.6.1放大与缩小 477
26.6.2图像翻转 479
26.6.3图像旋转 481
26.6.4图像倾斜 482
26.7播放音频文件 484
26.8小结 486
26.9实践与练习 486
第27章 打印技术 487
27.1打印控制类 488
27.2“打印”对话框 489
27.3打印页面 491
27.4多页打印 493
27.5打印预览 495
27.6小结 497
27.7实践与练习 497
第4篇 项目实战 500
第28章 企业进销存管理系统 500
28.1系统分析 501
28.1.1需求分析 501
28.1.2可行性分析 501
28.1.3编写项目计划书 502
28.2系统设计 504
28.2.1系统目标 504
28.2.2系统功能结构 504
28.2.3系统业务流程图 505
28.2.4系统编码规范 506
28.3开发环境 507
28.4数据库与数据表设计 508
28.4.1数据库分析 508
28.4.2创建数据库 509
28.4.3创建数据表 510
28.5创建项目 513
28.6系统文件夹组织结构 514
28.7公共类设计 515
28.7.1 Item公共类 515
28.7.2数据模型公共类 516
28.7.3 Dao公共类 518
28.8系统登录模块设计 524
28.8.1设计登录窗体 524
28.8.2“密码”文本框的回车事件 525
28.8.3“登录”按钮的事件处理 526
28.9系统主窗体设计 527
28.9.1设计菜单栏 527
28.9.2设计工具栏 530
28.9.3设计状态栏 531
28.10进货单模块设计 531
28.10.1设计进货单窗体 532
28.10.2添加进货商品 533
28.10.3进货统计 534
28.10.4商品入库 536
28.11销售单模块设计 538
28.11.1设计销售单窗体 538
28.11.2添加销售商品 539
28.11.3销售统计 540
28.11.4商品销售 541
28.12库存盘点模块设计 542
28.12.1设计库存盘点窗体 542
28.12.2读取库存商品 543
28.12.3统计损益数量 544
28.13数据库备份与恢复模块设计 545
28.13.1设计窗体 545
28.13.2文件浏览 546
28.13.3备份数据库 547
28.13.4恢复数据库 548
28.14运行项目 549
28.15系统打包发行 551
28.16开发常见问题与解决 553
28.16.1数据库无法访问 553
28.16.2打包的JAR文件无法登录 554
28.16.3数据库还原不成功 555
28.16.4数据库只读 555
28.16.5无法打开内部窗体 555
28.16.6“关于”界面被其他窗体覆盖 556
28.16.7打包JAR文件之后无法运行 556
28.16.8程序运行后没有出现闪屏界面 556
28.17小结 557
附录A JDK 7改进的功能 558
A.1语法 558
A.1.1 switch语句允许使用字符串 558
A.1.2整型数据支持二进制形式 559
A.1.3数值型数据中可以出现下划线 559
A.1.4泛型实例的创建可以通过类型推断来简化 559
A.1.5 try-with-resources语句 560
A.1.6改进了捕获多个异常时的类型检查 560
A.1.7在可变参数方法中传递非具体化参数时,改进编译警告和错误 561
A.2网络 562
A.3 Java2D 562
A.4 Swing 563
A.5 JavaI/O 563
A.6并发 563
A.7安全性 563
A.8 JavaXML 564
A.9 Java虚拟器(JVM) 564
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《Python3从入门到实战》董洪伟 2019
- 《小提琴入门新教程 第3册》王中男著 2018
- 《小提琴入门新教程 第2册》王中男编著 2017
- 《科技语篇翻译教程》雷晓峰,李静主编 2020
- 《新手养花从入门到精通》徐帮学编 2019
- 《少儿速成中国象棋 入门篇 上》田磊 2016
- 《隐之诗 不打草稿的古风水彩画入门》肖辉责任编辑;(中国)飞乐鸟工作室 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019