描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302517597
产品特色
编辑推荐
“软件开发视频大讲堂”丛书是清华社计算机专业基础类零售图书1畅销的品牌之一。
(1)丛书累计销售200多万册,深受广大开发者喜爱。
(2)4本荣获“全行业优畅销书”奖,1本荣获清华社“专业畅销书”一等奖。
(3)绝大多数品种在“全国计算机零售图书排行榜”同品种排行中名列前茅。
(4)实用、易懂、资源丰富,被 数百所高校选为专业课教材。
本书推荐:
1. 循序渐进,实战讲述:基础知识→核心技术→高级应用→项目实战,符合认知规律。
2. 297个应用实例 229集高清微视频 4个项目案例,边学边练,在实践中提升技能。
3. 超值赠送海量开发资源库资源,助力你夯实基础,精准,有效,速练,练就转岗就业不败之力。
(1)实例资源库 源码资源库:732个实例及源码详细分析,多练实例,多读源码,是快速学习之道。
(2)模块资源库:15个经典模块开发过程完整展现,拿来改改就能用。
(3)项目资源库:15个企业项目开发过程的完整展现,帮助你反复练习,触类旁通。
(4)面试资源库:369个企业面试真题及面试技巧,帮你进行职业规划,转岗就业不用愁。
(5)测试题库系统:616道能力测试题目,由易及难,快速判断自己的真实水平,熟能生巧。
4. 在线解答,高效学习。
?(1)在线答疑QQ及技术支持网站。
?(2)不定期进行在线直播课程。
(1)丛书累计销售200多万册,深受广大开发者喜爱。
(2)4本荣获“全行业优畅销书”奖,1本荣获清华社“专业畅销书”一等奖。
(3)绝大多数品种在“全国计算机零售图书排行榜”同品种排行中名列前茅。
(4)实用、易懂、资源丰富,被 数百所高校选为专业课教材。
本书推荐:
1. 循序渐进,实战讲述:基础知识→核心技术→高级应用→项目实战,符合认知规律。
2. 297个应用实例 229集高清微视频 4个项目案例,边学边练,在实践中提升技能。
3. 超值赠送海量开发资源库资源,助力你夯实基础,精准,有效,速练,练就转岗就业不败之力。
(1)实例资源库 源码资源库:732个实例及源码详细分析,多练实例,多读源码,是快速学习之道。
(2)模块资源库:15个经典模块开发过程完整展现,拿来改改就能用。
(3)项目资源库:15个企业项目开发过程的完整展现,帮助你反复练习,触类旁通。
(4)面试资源库:369个企业面试真题及面试技巧,帮你进行职业规划,转岗就业不用愁。
(5)测试题库系统:616道能力测试题目,由易及难,快速判断自己的真实水平,熟能生巧。
4. 在线解答,高效学习。
?(1)在线答疑QQ及技术支持网站。
?(2)不定期进行在线直播课程。
内容简介
《Java从入门到精通(第5版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Java语言进行程序开发需要掌握的知识。全书分为27章,包括初识Java,熟悉Eclipse开发工具,Java语言基础,流程控制,字符串,数组,类和对象,包装类,数字处理类,接口、继承与多态,类的高级特性,异常处理,Swing程序设计,集合类,I/O(输入/输出),反射,枚举类型与泛型,多线程,网络通信,数据库操作,Swing表格组件,Swing树组件,Swing其他高级组件,高级事件处理,AWT绘图,奔跑吧小恐龙和企业进销存管理系统等。
目 录
“开发资源库”目录…………XV
第1篇 基础知识
第1章 初识Java 2
视频讲解:17分钟
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 Java API文档 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环境 10
1.4 小结 13
第2章 熟悉Eclipse开发工具 14
视频讲解:21分钟
2.1 熟悉Eclipse 15
2.1.1 Eclipse简介 15
2.1.2 下载Eclipse 15
2.1.3 安装Eclipse的中文语言包 17
2.1.4 Eclipse的配置与启动 19
2.1.5 Eclipse工作台 20
2.1.6 透视图与视图 21
2.1.7 菜单栏 21
2.1.8 工具栏 25
2.1.9 “包资源管理器”视图 25
2.1.10 “控制台”视图 26
2.2 使用Eclipse 26
2.2.1 创建Java项目 26
2.2.2 创建Java类文件 27
2.2.3 使用编辑器编写程序代码 28
2.2.4 运行Java程序 31
2.3 程序调试 31
2.4 小结 33
2.5 实践与练习 33
第3章 Java语言基础 34
视频讲解:1小时45分钟
3.1 Java主类结构 35
3.1.1 包声明 35
3.1.2 声明成员变量和局部变量 36
3.1.3 编写主方法 36
3.1.4 导入API类库 36
3.2 基本数据类型 36
3.2.1 整数类型 37
3.2.2 浮点类型 38
3.2.3 字符类型 39
3.2.4 布尔类型 40
3.3 变量与常量 40
3.3.1 标识符和关键字 41
3.3.2 声明变量 41
3.3.3 声明常量 42
3.3.4 变量的有效范围 43
3.4 运算符 44
3.4.1 赋值运算符 45
3.4.2 算术运算符 46
3.4.3 自增和自减运算符 47
3.4.4 比较运算符 47
3.4.5 逻辑运算符 48
3.4.6 位运算符 49
3.4.7 三元运算符 51
3.4.8 运算符优先级 51
3.5 数据类型转换 52
3.5.1 隐式类型转换 53
3.5.2 显式类型转换 54
3.6 代码注释与编码规范 54
3.6.1 代码注释 55
3.6.2 编码规范 56
3.7 小结 56
3.8 实践与练习 57
第4章 流程控制 58
视频讲解:1小时21分钟
4.1 复合语句 59
4.2 条件语句 60
4.2.1 if条件语句 60
4.2.2 switch多分支语句 64
4.3 循环语句 66
4.3.1 while循环语句 67
4.3.2 do…while循环语句 68
4.3.3 for循环语句 69
4.4 循环控制 71
4.4.1 break语句 71
4.4.2 continue语句 73
4.5 小结 75
4.6 实践与练习 75
第5章 字符串 76
视频讲解:1小时53分钟
5.1 String类 77
5.1.1 声明字符串 77
5.1.2 创建字符串 77
5.2 连接字符串 78
5.2.1 连接多个字符串 79
5.2.2 连接其他数据类型 79
5.3 获取字符串信息 80
5.3.1 获取字符串长度 81
5.3.2 字符串查找 81
5.3.3 获取指定索引位置的字符 82
5.4 字符串操作 83
5.4.1 获取子字符串 83
5.4.2 去除空格 84
5.4.3 字符串替换 85
5.4.4 判断字符串的开始与结尾 86
5.4.5 判断字符串是否相等 87
5.4.6 按字典顺序比较两个字符串 88
5.4.7 字母大小写转换 89
5.4.8 字符串分割 90
5.5 格式化字符串 92
5.5.1 日期和时间字符串格式化 92
5.5.2 常规类型格式化 95
5.6 使用正则表达式 96
5.7 字符串生成器 99
5.8 小结 101
5.9 实践与练习 101
第6章 数组 102
视频讲解:1小时21分钟
6.1 数组概述 103
6.2 一维数组的创建及使用 103
6.2.1 创建一维数组 103
6.2.2 初始化一维数组 104
6.2.3 使用一维数组 105
6.3 二维数组的创建及使用 105
6.3.1 二维数组的创建 105
6.3.2 二维数组初始化 106
6.3.3 使用二维数组 107
6.4 数组的基本操作 108
6.4.1 遍历数组 108
6.4.2 填充替换数组元素 109
6.4.3 对数组进行排序 111
6.4.4 复制数组 112
6.4.5 数组查询 113
6.5 数组排序算法 115
6.5.1 冒泡排序 115
6.5.2 直接选择排序 117
6.5.3 反转排序 119
6.6 小结 121
6.7 实践与练习 121
第7章 类和对象 122
视频讲解:1小时27分钟
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 权限修饰符 128
7.2.4 局部变量 130
7.2.5 局部变量的有效范围 130
7.2.6 this关键字 131
7.3 类的构造方法 132
7.4 静态变量、常量和方法 133
7.5 类的主方法 135
7.6 对象 136
7.6.1 对象的创建 136
7.6.2 访问对象的属性和行为 138
7.6.3 对象的引用 140
7.6.4 对象的比较 141
7.6.5 对象的销毁 141
7.7 小结 142
7.8 实践与练习 142
第8章 包装类 144
视频讲解:32分钟
8.1 Integer 145
8.2 Boolean 147
8.3 Byte 149
8.4 Character 150
8.5 Double 151
8.6 Number 152
8.7 小结 153
8.8 实践与练习 153
第9章 数字处理类 154
视频讲解:38分钟
9.1 数字格式化 155
9.2 数学运算 157
9.2.1 Math类 157
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 165
9.4.2 BigDecimal 167
9.5 小结 170
9.6 实践与练习 170
第2篇 核心技术
第10章 接口、继承与多态 172
视频讲解:1小时30分钟
10.1 类的继承 173
10.2 Object类 176
10.3 对象类型的转换 178
10.3.1 向上转型 178
10.3.2 向下转型 179
10.4 使用instanceof操作符判断对象类型 180
10.5 方法的重载 182
10.6 多态 185
10.7 抽象类与接口 186
10.7.1 抽象类 186
10.7.2 接口 188
10.8 小结 190
10.9 实践与练习 191
第11章 类的高级特性 192
视频讲解:35分钟
11.1 Java类包 193
11.1.1 类名冲突 193
11.1.2 完整的类路径 193
11.1.3 创建包 194
11.1.4 导入包 195
11.2 final变量 197
11.3 final方法 199
11.4 final类 201
11.5 内部类 201
11.5.1 成员内部类 202
11.5.2 局部内部类 206
11.5.3 匿名内部类 206
11.5.4 静态内部类 207
11.5.5 内部类的继承 208
11.6 小结 209
11.7 实践与练习 209
第12章 异常处理 210
视频讲解:1小时8分钟
12.1 异常概述 211
12.2 处理程序异常错误 211
12.2.1 错误 212
12.2.2 捕捉异常 212
12.3 Java常见异常 214
12.4 自定义异常 215
12.5 在方法中抛出异常 216
12.5.1 使用throws关键字抛出异常 216
12.5.2 使用throw关键字抛出异常 217
12.6 运行时异常 219
12.7 异常的使用原则 219
12.8 小结 220
12.9 实践与练习 220
第13章 Swing程序设计 221
视频讲解:3小时2分钟
13.1 Swing概述 222
13.1.1 Swing特点 222
13.1.2 Swing包 222
13.1.3 常用Swing组件概述 223
13.2 常用窗体 223
13.2.1 JFrame窗体 223
13.2.2 JDialog窗体 225
13.3 标签组件与图标 227
13.3.1 标签的使用 227
13.3.2 图标的使用 228
13.4 常用布局管理器 230
13.4.1 绝对布局 231
13.4.2 流布局管理器 232
13.4.3 边界布局管理器 233
13.4.4 网格布局管理器 234
13.4.5 网格组布局管理器 236
13.5 常用面板 241
13.5.1 JPanel面板 242
13.5.2 JScrollPane面板 243
13.6 按钮组件 244
13.6.1 提交按钮组件 244
13.6.2 单选按钮组件 245
13.6.3 复选框组件 246
13.7 列表组件 247
13.7.1 下拉列表框组件 248
13.7.2 列表框组件 249
13.8 文本组件 251
13.8.1 文本框组件 251
13.8.2 密码框组件 252
13.8.3 文本域组件 253
13.9 常用事件监听器 254
13.9.1 监听事件简介 254
13.9.2 动作事件监听器 254
13.9.3 焦点事件监听器 256
13.10 小结 257
13.11 实践与练习 257
第14章 集合类 258
视频讲解:60分钟
14.1 集合类概述 259
14.2 Collection接口 259
14.3 List集合 260
14.3.1 List接口 260
14.3.2 List接口的实现类 261
14.4 Set集合 262
14.5 Map集合 264
14.5.1 Map接口 265
14.5.2 Map接口的实现类 266
14.6 小结 268
14.7 实践与练习 268
第15章 I/O(输入/输出) 269
视频讲解:1小时40分钟
15.1 流概述 270
15.2 输入/输出流 270
15.2.1 输入流 270
15.2.2 输出流 272
15.3 File类 273
15.3.1 文件的创建与删除 273
15.3.2 获取文件信息 274
15.4 文件输入/输出流 275
15.4.1 FileInputStream与FileOutputStream类 276
15.4.2 FileReader和FileWriter类 277
15.5 带缓存的输入/输出流 279
15.5.1 BufferedInputStream与BufferedOutputStream类 279
15.5.2 BufferedReader与BufferedWriter类 280
15.6 数据输入/输出流 281
15.7 ZIP压缩输入/输出流 283
15.7.1 压缩文件 283
15.7.2 解压缩ZIP文件 285
15.8 小结 286
15.9 实践与练习 287
第16章 反射 288
视频讲解:1小时3分钟
16.1 Class类与Java反射 289
16.1.1 访问构造方法 290
16.1.2 访问成员变量 293
16.1.3 访问方法 296
16.2 使用Annotation功能 299
16.2.1 定义Annotation类型 299
16.2.2 访问Annotation信息 302
16.3 小结 305
16.4 实践与练习 305
第17章 枚举类型与泛型 306
视频讲解:1小时20分钟
17.1 枚举类型 307
17.1.1 使用枚举类型设置常量 307
17.1.2 深入了解枚举类型 309
17.1.3 使用枚举类型的优势 314
17.2 泛型 314
17.2.1 回顾向上转型与向下转型 314
17.2.2 定义泛型类 315
17.2.3 泛型的常规用法 317
17.2.4 泛型的高级用法 320
17.2.5 泛型总结 322
17.3 小结 323
17.4 实践与练习 323
第18章 多线程 324
视频讲解:45分钟
18.1 线程简介 325
18.2 实现线程的两种方式 325
18.2.1 继承Thread类 326
18.2.2 实现Runnable接口 327
18.3 线程的生命周期 329
18.4 操作线程的方法 331
18.4.1 线程的休眠 331
18.4.2 线程的加入 333
18.4.3 线程的中断 334
18.4.4 线程的礼让 336
18.5 线程的优先级 336
18.6 线程同步 338
18.6.1 线程安全 338
18.6.2 线程同步机制 340
18.7 小结 342
18.8 实践与练习 342
第19章 网络通信 343
视频讲解:60分钟
19.1 网络程序设计基础 344
19.1.1 局域网与因特网 344
19.1.2 网络协议 344
19.1.3 端口和套接字 345
19.2 TCP程序设计基础 346
19.2.1 InetAddress类 346
19.2.2 ServerSocket类 347
19.2.3 TCP网络程序 348
19.3 UDP程序设计基础 351
19.3.1 DatagramPacket类 352
19.3.2 DatagramSocket类 352
19.3.3 UDP网络程序 353
19.4 小结 356
19.5 实践与练习 356
第20章 数据库操作 357
视频讲解:47分钟
20.1 数据库基础知识 358
20.1.1 什么是数据库 358
20.1.2 数据库的种类及功能 359
20.1.3 SQL语言 359
20.2 JDBC概述 361
20.2.1 JDBC-ODBC桥 361
20.2.2 JDBC技术 361
20.2.3 JDBC驱动程序的类型 362
20.3 JDBC中常用的类和接口 362
20.3.1 Connection接口 362
20.3.2 Statement接口 363
20.3.3 PreparedStatement接口 363
20.3.4 DriverManager类 364
20.3.5 ResultSet接口 364
20.4 数据库操作 365
20.4.1 连接数据库 365
20.4.2 向数据库发送SQL语句 367
20.4.3 处理查询结果集 367
20.4.4 顺序查询 367
20.4.5 模糊查询 368
20.4.6 预处理语句 370
20.4.7 添加、修改、删除记录 371
20.5 小结 373
20.6 实践与练习 373
第3篇 高级应用
第21章 Swing表格组件 375
视频讲解:33分钟
21.1 利用JTable类直接创建表格 376
21.1.1 创建表格 376
21.1.2 定制表格 378
21.1.3 操纵表格 382
21.2 表格模型与表格 384
21.2.1 利用表格模型创建表格 384
21.2.2 维护表格模型 386
21.3 提供行标题栏的表格 388
21.4 小结 392
21.5 实践与练习 392
第22章 Swing树组件 393
视频讲解:20分钟
22.1 简单的树 394
22.2 处理选中节点事件 395
22.3 遍历树节点 397
22.4 定制树 399
22.5 维护树模型 401
22.6 处理展开节点事件 404
22.7 小结 406
22.8 实践与练习 406
第23章 Swing其他高级组件 407
视频讲解:1小时30分钟
23.1 高级组件面板 408
23.1.1 分割面板 408
23.1.2 选项卡面板 410
23.1.3 桌面面板和内部窗体 413
23.2 菜 单 417
23.2.1 创建菜单栏 417
23.2.2 创建弹出式菜单 419
23.2.3 定制个性化菜单 420
23.3 工具 栏 424
23.4 文件选择器 425
23.4.1 文件选择对话框 425
23.4.2 使用文件过滤器 426
23.5 进 度 条 428
23.6 系 统 托 盘 429
23.7 桌面集成控件 431
23.8 小结 431
23.9 实践与练习 432
第24章 高级事件处理 433
视频讲解:1小时13分钟
24.1 键 盘 事 件 434
24.2 鼠 标 事 件 436
24.3 窗体事件 438
24.3.1 捕获窗体焦点变化事件 438
24.3.2 捕获窗体状态变化事件 439
24.3.3 捕获其他窗体事件 441
24.4 选项事件 442
24.5 表格模型事件 444
24.6 小结 446
24.7 实践与练习 447
第25章 AWT绘图 448
视频讲解:1小时24分钟
25.1 Java绘图 449
25.1.1 Graphics 449
25.1.2 Graphics2D 449
25.2 绘制图形 449
25.3 绘图颜色与画笔属性 453
25.3.1 设置颜色 453
25.3.2 画笔属性 454
25.4 绘制文本 455
25.4.1 设置字体 456
25.4.2 显示文字 456
25.5 绘制图片 457
25.6 图像处理 459
25.6.1 放大与缩小 459
25.6.2 图像翻转 461
25.6.3 图像旋转 463
25.6.4 图像倾斜 464
25.7 小结 466
25.8 实践与练习 466
第4篇 项目实战
第26章 奔跑吧,小恐龙! 468
视频讲解:54分钟
26.1 开发背景 469
26.2 系统结构设计 469
26.2.1 系统功能结构 469
26.2.2 系统业务流程 470
26.3 项目目录结构预览 470
26.4 游戏模型设计 471
26.4.1 恐龙类 471
26.4.2 障碍类 474
26.5 音效模块设计 475
26.5.1 音频播放器 476
26.5.2 音效工具类 477
26.6 计分器模块设计 478
26.7 视图模块设计 481
26.7.1 主窗体 481
26.7.2 游戏面板 483
26.7.3 成绩对话框 485
26.8 游戏核心功能设计 487
26.8.1 刷新帧 487
26.8.2 滚动背景 488
26.8.3 碰撞检测 499
26.8.4 键盘监听 490
26.9 小结 491
第27章 企业进销存管理系统 492
视频讲解:1小时12分钟
27.1 系统分析 493
27.1.1 需求分析 493
27.1.2 可行性分析 493
27.1.3 编写项目计划书 494
27.2 系统设计 496
27.2.1 系统目标 496
27.2.2 系统功能结构 496
27.2.3 系统业务流程图 497
27.2.4 系统编码规范 498
27.3 开发环境 499
27.4 数据库与数据表设计 500
27.4.1 数据库分析 500
27.4.2 创建数据库 500
27.4.3 创建数据表 501
27.5 创建项目 505
27.6 系统文件夹组织结构 506
27.7 公共类设计 506
27.7.1 Item公共类 506
27.7.2 数据模型公共类 507
27.7.3 Dao公共类 509
27.8 系统登录模块设计 519
27.8.1 设计登录窗体 519
27.8.2 “密码”文本框的回车事件 520
27.8.3 “登录”按钮的事件处理 520
27.9 系统主窗体设计 522
27.9.1 设计菜单栏 522
27.9.2 设计工具栏 524
27.9.3 设计状态栏 525
27.10 进货单模块设计 526
27.10.1 设计进货单窗体 527
27.10.2 添加进货商品 528
27.10.3 进货统计 529
27.10.4 商品入库 530
27.11 销售单模块设计 532
27.11.1 设计销售单窗体 533
27.11.2 添加销售商品 533
27.11.3 销售统计 534
27.11.4 商品销售 535
27.12 库存盘点模块设计 536
27.12.1 设计库存盘点窗体 537
27.12.2 读取库存商品 537
27.12.3 统计损益数量 539
27.13 数据库备份与恢复模块设计 540
27.13.1 设计窗体 540
27.13.2 文件浏览 540
27.13.3 备份数据库 541
27.13.4 恢复数据库 542
27.14 运行项目 543
27.15 开发常见问题与解决 544
27.15.1 无法打开内部窗体 544
27.15.2 “关于”界面被其他窗体覆盖 545
27.15.3 程序运行后没有出现闪屏界面 545
27.16 小结 545
第1篇 基础知识
第1章 初识Java 2
视频讲解:17分钟
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 Java API文档 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环境 10
1.4 小结 13
第2章 熟悉Eclipse开发工具 14
视频讲解:21分钟
2.1 熟悉Eclipse 15
2.1.1 Eclipse简介 15
2.1.2 下载Eclipse 15
2.1.3 安装Eclipse的中文语言包 17
2.1.4 Eclipse的配置与启动 19
2.1.5 Eclipse工作台 20
2.1.6 透视图与视图 21
2.1.7 菜单栏 21
2.1.8 工具栏 25
2.1.9 “包资源管理器”视图 25
2.1.10 “控制台”视图 26
2.2 使用Eclipse 26
2.2.1 创建Java项目 26
2.2.2 创建Java类文件 27
2.2.3 使用编辑器编写程序代码 28
2.2.4 运行Java程序 31
2.3 程序调试 31
2.4 小结 33
2.5 实践与练习 33
第3章 Java语言基础 34
视频讲解:1小时45分钟
3.1 Java主类结构 35
3.1.1 包声明 35
3.1.2 声明成员变量和局部变量 36
3.1.3 编写主方法 36
3.1.4 导入API类库 36
3.2 基本数据类型 36
3.2.1 整数类型 37
3.2.2 浮点类型 38
3.2.3 字符类型 39
3.2.4 布尔类型 40
3.3 变量与常量 40
3.3.1 标识符和关键字 41
3.3.2 声明变量 41
3.3.3 声明常量 42
3.3.4 变量的有效范围 43
3.4 运算符 44
3.4.1 赋值运算符 45
3.4.2 算术运算符 46
3.4.3 自增和自减运算符 47
3.4.4 比较运算符 47
3.4.5 逻辑运算符 48
3.4.6 位运算符 49
3.4.7 三元运算符 51
3.4.8 运算符优先级 51
3.5 数据类型转换 52
3.5.1 隐式类型转换 53
3.5.2 显式类型转换 54
3.6 代码注释与编码规范 54
3.6.1 代码注释 55
3.6.2 编码规范 56
3.7 小结 56
3.8 实践与练习 57
第4章 流程控制 58
视频讲解:1小时21分钟
4.1 复合语句 59
4.2 条件语句 60
4.2.1 if条件语句 60
4.2.2 switch多分支语句 64
4.3 循环语句 66
4.3.1 while循环语句 67
4.3.2 do…while循环语句 68
4.3.3 for循环语句 69
4.4 循环控制 71
4.4.1 break语句 71
4.4.2 continue语句 73
4.5 小结 75
4.6 实践与练习 75
第5章 字符串 76
视频讲解:1小时53分钟
5.1 String类 77
5.1.1 声明字符串 77
5.1.2 创建字符串 77
5.2 连接字符串 78
5.2.1 连接多个字符串 79
5.2.2 连接其他数据类型 79
5.3 获取字符串信息 80
5.3.1 获取字符串长度 81
5.3.2 字符串查找 81
5.3.3 获取指定索引位置的字符 82
5.4 字符串操作 83
5.4.1 获取子字符串 83
5.4.2 去除空格 84
5.4.3 字符串替换 85
5.4.4 判断字符串的开始与结尾 86
5.4.5 判断字符串是否相等 87
5.4.6 按字典顺序比较两个字符串 88
5.4.7 字母大小写转换 89
5.4.8 字符串分割 90
5.5 格式化字符串 92
5.5.1 日期和时间字符串格式化 92
5.5.2 常规类型格式化 95
5.6 使用正则表达式 96
5.7 字符串生成器 99
5.8 小结 101
5.9 实践与练习 101
第6章 数组 102
视频讲解:1小时21分钟
6.1 数组概述 103
6.2 一维数组的创建及使用 103
6.2.1 创建一维数组 103
6.2.2 初始化一维数组 104
6.2.3 使用一维数组 105
6.3 二维数组的创建及使用 105
6.3.1 二维数组的创建 105
6.3.2 二维数组初始化 106
6.3.3 使用二维数组 107
6.4 数组的基本操作 108
6.4.1 遍历数组 108
6.4.2 填充替换数组元素 109
6.4.3 对数组进行排序 111
6.4.4 复制数组 112
6.4.5 数组查询 113
6.5 数组排序算法 115
6.5.1 冒泡排序 115
6.5.2 直接选择排序 117
6.5.3 反转排序 119
6.6 小结 121
6.7 实践与练习 121
第7章 类和对象 122
视频讲解:1小时27分钟
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 权限修饰符 128
7.2.4 局部变量 130
7.2.5 局部变量的有效范围 130
7.2.6 this关键字 131
7.3 类的构造方法 132
7.4 静态变量、常量和方法 133
7.5 类的主方法 135
7.6 对象 136
7.6.1 对象的创建 136
7.6.2 访问对象的属性和行为 138
7.6.3 对象的引用 140
7.6.4 对象的比较 141
7.6.5 对象的销毁 141
7.7 小结 142
7.8 实践与练习 142
第8章 包装类 144
视频讲解:32分钟
8.1 Integer 145
8.2 Boolean 147
8.3 Byte 149
8.4 Character 150
8.5 Double 151
8.6 Number 152
8.7 小结 153
8.8 实践与练习 153
第9章 数字处理类 154
视频讲解:38分钟
9.1 数字格式化 155
9.2 数学运算 157
9.2.1 Math类 157
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 165
9.4.2 BigDecimal 167
9.5 小结 170
9.6 实践与练习 170
第2篇 核心技术
第10章 接口、继承与多态 172
视频讲解:1小时30分钟
10.1 类的继承 173
10.2 Object类 176
10.3 对象类型的转换 178
10.3.1 向上转型 178
10.3.2 向下转型 179
10.4 使用instanceof操作符判断对象类型 180
10.5 方法的重载 182
10.6 多态 185
10.7 抽象类与接口 186
10.7.1 抽象类 186
10.7.2 接口 188
10.8 小结 190
10.9 实践与练习 191
第11章 类的高级特性 192
视频讲解:35分钟
11.1 Java类包 193
11.1.1 类名冲突 193
11.1.2 完整的类路径 193
11.1.3 创建包 194
11.1.4 导入包 195
11.2 final变量 197
11.3 final方法 199
11.4 final类 201
11.5 内部类 201
11.5.1 成员内部类 202
11.5.2 局部内部类 206
11.5.3 匿名内部类 206
11.5.4 静态内部类 207
11.5.5 内部类的继承 208
11.6 小结 209
11.7 实践与练习 209
第12章 异常处理 210
视频讲解:1小时8分钟
12.1 异常概述 211
12.2 处理程序异常错误 211
12.2.1 错误 212
12.2.2 捕捉异常 212
12.3 Java常见异常 214
12.4 自定义异常 215
12.5 在方法中抛出异常 216
12.5.1 使用throws关键字抛出异常 216
12.5.2 使用throw关键字抛出异常 217
12.6 运行时异常 219
12.7 异常的使用原则 219
12.8 小结 220
12.9 实践与练习 220
第13章 Swing程序设计 221
视频讲解:3小时2分钟
13.1 Swing概述 222
13.1.1 Swing特点 222
13.1.2 Swing包 222
13.1.3 常用Swing组件概述 223
13.2 常用窗体 223
13.2.1 JFrame窗体 223
13.2.2 JDialog窗体 225
13.3 标签组件与图标 227
13.3.1 标签的使用 227
13.3.2 图标的使用 228
13.4 常用布局管理器 230
13.4.1 绝对布局 231
13.4.2 流布局管理器 232
13.4.3 边界布局管理器 233
13.4.4 网格布局管理器 234
13.4.5 网格组布局管理器 236
13.5 常用面板 241
13.5.1 JPanel面板 242
13.5.2 JScrollPane面板 243
13.6 按钮组件 244
13.6.1 提交按钮组件 244
13.6.2 单选按钮组件 245
13.6.3 复选框组件 246
13.7 列表组件 247
13.7.1 下拉列表框组件 248
13.7.2 列表框组件 249
13.8 文本组件 251
13.8.1 文本框组件 251
13.8.2 密码框组件 252
13.8.3 文本域组件 253
13.9 常用事件监听器 254
13.9.1 监听事件简介 254
13.9.2 动作事件监听器 254
13.9.3 焦点事件监听器 256
13.10 小结 257
13.11 实践与练习 257
第14章 集合类 258
视频讲解:60分钟
14.1 集合类概述 259
14.2 Collection接口 259
14.3 List集合 260
14.3.1 List接口 260
14.3.2 List接口的实现类 261
14.4 Set集合 262
14.5 Map集合 264
14.5.1 Map接口 265
14.5.2 Map接口的实现类 266
14.6 小结 268
14.7 实践与练习 268
第15章 I/O(输入/输出) 269
视频讲解:1小时40分钟
15.1 流概述 270
15.2 输入/输出流 270
15.2.1 输入流 270
15.2.2 输出流 272
15.3 File类 273
15.3.1 文件的创建与删除 273
15.3.2 获取文件信息 274
15.4 文件输入/输出流 275
15.4.1 FileInputStream与FileOutputStream类 276
15.4.2 FileReader和FileWriter类 277
15.5 带缓存的输入/输出流 279
15.5.1 BufferedInputStream与BufferedOutputStream类 279
15.5.2 BufferedReader与BufferedWriter类 280
15.6 数据输入/输出流 281
15.7 ZIP压缩输入/输出流 283
15.7.1 压缩文件 283
15.7.2 解压缩ZIP文件 285
15.8 小结 286
15.9 实践与练习 287
第16章 反射 288
视频讲解:1小时3分钟
16.1 Class类与Java反射 289
16.1.1 访问构造方法 290
16.1.2 访问成员变量 293
16.1.3 访问方法 296
16.2 使用Annotation功能 299
16.2.1 定义Annotation类型 299
16.2.2 访问Annotation信息 302
16.3 小结 305
16.4 实践与练习 305
第17章 枚举类型与泛型 306
视频讲解:1小时20分钟
17.1 枚举类型 307
17.1.1 使用枚举类型设置常量 307
17.1.2 深入了解枚举类型 309
17.1.3 使用枚举类型的优势 314
17.2 泛型 314
17.2.1 回顾向上转型与向下转型 314
17.2.2 定义泛型类 315
17.2.3 泛型的常规用法 317
17.2.4 泛型的高级用法 320
17.2.5 泛型总结 322
17.3 小结 323
17.4 实践与练习 323
第18章 多线程 324
视频讲解:45分钟
18.1 线程简介 325
18.2 实现线程的两种方式 325
18.2.1 继承Thread类 326
18.2.2 实现Runnable接口 327
18.3 线程的生命周期 329
18.4 操作线程的方法 331
18.4.1 线程的休眠 331
18.4.2 线程的加入 333
18.4.3 线程的中断 334
18.4.4 线程的礼让 336
18.5 线程的优先级 336
18.6 线程同步 338
18.6.1 线程安全 338
18.6.2 线程同步机制 340
18.7 小结 342
18.8 实践与练习 342
第19章 网络通信 343
视频讲解:60分钟
19.1 网络程序设计基础 344
19.1.1 局域网与因特网 344
19.1.2 网络协议 344
19.1.3 端口和套接字 345
19.2 TCP程序设计基础 346
19.2.1 InetAddress类 346
19.2.2 ServerSocket类 347
19.2.3 TCP网络程序 348
19.3 UDP程序设计基础 351
19.3.1 DatagramPacket类 352
19.3.2 DatagramSocket类 352
19.3.3 UDP网络程序 353
19.4 小结 356
19.5 实践与练习 356
第20章 数据库操作 357
视频讲解:47分钟
20.1 数据库基础知识 358
20.1.1 什么是数据库 358
20.1.2 数据库的种类及功能 359
20.1.3 SQL语言 359
20.2 JDBC概述 361
20.2.1 JDBC-ODBC桥 361
20.2.2 JDBC技术 361
20.2.3 JDBC驱动程序的类型 362
20.3 JDBC中常用的类和接口 362
20.3.1 Connection接口 362
20.3.2 Statement接口 363
20.3.3 PreparedStatement接口 363
20.3.4 DriverManager类 364
20.3.5 ResultSet接口 364
20.4 数据库操作 365
20.4.1 连接数据库 365
20.4.2 向数据库发送SQL语句 367
20.4.3 处理查询结果集 367
20.4.4 顺序查询 367
20.4.5 模糊查询 368
20.4.6 预处理语句 370
20.4.7 添加、修改、删除记录 371
20.5 小结 373
20.6 实践与练习 373
第3篇 高级应用
第21章 Swing表格组件 375
视频讲解:33分钟
21.1 利用JTable类直接创建表格 376
21.1.1 创建表格 376
21.1.2 定制表格 378
21.1.3 操纵表格 382
21.2 表格模型与表格 384
21.2.1 利用表格模型创建表格 384
21.2.2 维护表格模型 386
21.3 提供行标题栏的表格 388
21.4 小结 392
21.5 实践与练习 392
第22章 Swing树组件 393
视频讲解:20分钟
22.1 简单的树 394
22.2 处理选中节点事件 395
22.3 遍历树节点 397
22.4 定制树 399
22.5 维护树模型 401
22.6 处理展开节点事件 404
22.7 小结 406
22.8 实践与练习 406
第23章 Swing其他高级组件 407
视频讲解:1小时30分钟
23.1 高级组件面板 408
23.1.1 分割面板 408
23.1.2 选项卡面板 410
23.1.3 桌面面板和内部窗体 413
23.2 菜 单 417
23.2.1 创建菜单栏 417
23.2.2 创建弹出式菜单 419
23.2.3 定制个性化菜单 420
23.3 工具 栏 424
23.4 文件选择器 425
23.4.1 文件选择对话框 425
23.4.2 使用文件过滤器 426
23.5 进 度 条 428
23.6 系 统 托 盘 429
23.7 桌面集成控件 431
23.8 小结 431
23.9 实践与练习 432
第24章 高级事件处理 433
视频讲解:1小时13分钟
24.1 键 盘 事 件 434
24.2 鼠 标 事 件 436
24.3 窗体事件 438
24.3.1 捕获窗体焦点变化事件 438
24.3.2 捕获窗体状态变化事件 439
24.3.3 捕获其他窗体事件 441
24.4 选项事件 442
24.5 表格模型事件 444
24.6 小结 446
24.7 实践与练习 447
第25章 AWT绘图 448
视频讲解:1小时24分钟
25.1 Java绘图 449
25.1.1 Graphics 449
25.1.2 Graphics2D 449
25.2 绘制图形 449
25.3 绘图颜色与画笔属性 453
25.3.1 设置颜色 453
25.3.2 画笔属性 454
25.4 绘制文本 455
25.4.1 设置字体 456
25.4.2 显示文字 456
25.5 绘制图片 457
25.6 图像处理 459
25.6.1 放大与缩小 459
25.6.2 图像翻转 461
25.6.3 图像旋转 463
25.6.4 图像倾斜 464
25.7 小结 466
25.8 实践与练习 466
第4篇 项目实战
第26章 奔跑吧,小恐龙! 468
视频讲解:54分钟
26.1 开发背景 469
26.2 系统结构设计 469
26.2.1 系统功能结构 469
26.2.2 系统业务流程 470
26.3 项目目录结构预览 470
26.4 游戏模型设计 471
26.4.1 恐龙类 471
26.4.2 障碍类 474
26.5 音效模块设计 475
26.5.1 音频播放器 476
26.5.2 音效工具类 477
26.6 计分器模块设计 478
26.7 视图模块设计 481
26.7.1 主窗体 481
26.7.2 游戏面板 483
26.7.3 成绩对话框 485
26.8 游戏核心功能设计 487
26.8.1 刷新帧 487
26.8.2 滚动背景 488
26.8.3 碰撞检测 499
26.8.4 键盘监听 490
26.9 小结 491
第27章 企业进销存管理系统 492
视频讲解:1小时12分钟
27.1 系统分析 493
27.1.1 需求分析 493
27.1.2 可行性分析 493
27.1.3 编写项目计划书 494
27.2 系统设计 496
27.2.1 系统目标 496
27.2.2 系统功能结构 496
27.2.3 系统业务流程图 497
27.2.4 系统编码规范 498
27.3 开发环境 499
27.4 数据库与数据表设计 500
27.4.1 数据库分析 500
27.4.2 创建数据库 500
27.4.3 创建数据表 501
27.5 创建项目 505
27.6 系统文件夹组织结构 506
27.7 公共类设计 506
27.7.1 Item公共类 506
27.7.2 数据模型公共类 507
27.7.3 Dao公共类 509
27.8 系统登录模块设计 519
27.8.1 设计登录窗体 519
27.8.2 “密码”文本框的回车事件 520
27.8.3 “登录”按钮的事件处理 520
27.9 系统主窗体设计 522
27.9.1 设计菜单栏 522
27.9.2 设计工具栏 524
27.9.3 设计状态栏 525
27.10 进货单模块设计 526
27.10.1 设计进货单窗体 527
27.10.2 添加进货商品 528
27.10.3 进货统计 529
27.10.4 商品入库 530
27.11 销售单模块设计 532
27.11.1 设计销售单窗体 533
27.11.2 添加销售商品 533
27.11.3 销售统计 534
27.11.4 商品销售 535
27.12 库存盘点模块设计 536
27.12.1 设计库存盘点窗体 537
27.12.2 读取库存商品 537
27.12.3 统计损益数量 539
27.13 数据库备份与恢复模块设计 540
27.13.1 设计窗体 540
27.13.2 文件浏览 540
27.13.3 备份数据库 541
27.13.4 恢复数据库 542
27.14 运行项目 543
27.15 开发常见问题与解决 544
27.15.1 无法打开内部窗体 544
27.15.2 “关于”界面被其他窗体覆盖 545
27.15.3 程序运行后没有出现闪屏界面 545
27.16 小结 545
前 言
丛书说明:“软件开发视频大讲堂”丛书(第1版)于2008年8月出版,因其编写细腻,易学实用,配备海量学习资源和全程视频等,在软件开发类图书市场上产生了很大反响,绝大部分品种在全国软件开发零售图书排行榜中名列前茅,2009年多个品种被评为“全国优秀畅销书”。
“软件开发视频大讲堂”丛书(第2版)于2010年8月出版,第3版于2012年8月出版,第4版于2016年10月出版。十年锤炼,打造经典。丛书迄今累计重印426次,销售200多万册。不仅深受广大程序员的喜爱,还被百余所高校选为计算机、软件等相关专业的教学参考用书。
“软件开发视频大讲堂”丛书(第5版)在继承前4版所有优点的基础上,将开发环境和工具全部更新为最新的JDK10和Eclipse最新版本,并且全部重新录制了视频,结合目前市场需要,进一步对丛书品种进行了完善,对相关内容进行了更新优化,使之更适合读者学习,为了方便教学,还提供了教学课件PPT。
Java是Sun公司推出的能够跨越多平台的、可移植性最高的一种面向对象的编程语言。自面世以来,Java凭借其易学易用、功能强大的特点得到了广泛的应用。其强大的跨平台特性使Java程序可以运行在大部分系统平台上,甚至可在手持电话、商务助理等移动电子产品上运行,真正做到“一次编写,到处运行”。Java可用于编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等,这使得它成为应用范围最广泛的开发语言。随着Java技术的不断更新,在全球云计算和移动互联网的产业环境下,Java的显著优势和广阔前景将进一步呈现出来。
本书内容
本书提供了从入门到编程高手所必备的各类知识,共分4篇。
第1篇:基础知识。本篇通过初识Java、熟悉Eclipse开发工具、Java语言基础、流程控制、字符串、数组、类和对象、包装类、数字处理类等内容的介绍,并结合大量的图示、实例、视频等,使读者快速掌握Java语言,为以后编程奠定坚实的基础。
第2篇:核心技术。本篇介绍了接口、继承与多态,类的高级特性,异常处理,Swing程序设计,集合类,I/O(输入/输出),反射,枚举类型与泛型,多线程,网络通信和数据库操作等内容。学习完本篇,能够开发一些小型应用程序。
第3篇:高级应用。本篇介绍了Swing表格组件、Swing树组件、Swing其他高级组件、高级事件处理、AWT绘图等内容。学习完本篇,能够开发高级的桌面应用程序、多媒体程序和打印程序等。
第4篇:项目实战。本篇通过一个小恐龙游戏和一个大型、完整的企业进销存管理系统,运用软件工程的设计思想,让读者学习如何进行软件项目的实际开发。书中按照“编写项目计划书→系统设计→数据库设计→创建项目→实现项目→运行项目→项目打包部署→解决开发常见问题”的流程进行介绍,带领读者一步步亲身体验开发项目的全过程。
本书特点
由浅入深,循序渐进。本书以初、中级程序员为对象,先从Java语言基础学起,再学习Java的核心技术,然后学习Swing的高级应用,最后学习开发一个完整项目。讲解过程中步骤详尽,版式新颖,在操作的内容图片上以uvw……的编号 内容的方式进行标注,使读者在阅读时一目了然,从而快速掌握书中内容。
微课视频,讲解详尽。为便于读者直观感受程序开发的全过程,书中大部分章节都配备了教学微视频,使用手机扫描正文小节标题一侧的二维码,即可观看学习,能快速引导初学者入门,感受编程的快乐和成就感,进一步增强学习的信心。
实例典型,轻松易学。通过例子学习是最好的学习方式,本书通过“一个知识点、一个例子、一个结果、一段评析、一个综合应用”的模式,透彻详尽地讲述了实际开发中所需的各类知识。另外,为了便于读者阅读程序代码,快速学习编程技能,书中几乎每行代码都提供了注释。
精彩栏目,贴心提醒。本书根据需要在各章安排了很多“注意”“说明”“技巧”等小栏目,让读者可以在学习过程中更轻松地理解相关知识点及概念,更快地掌握个别技术的应用技巧。
应用实践,随时练习。书中几乎每章都提供了“实践与练习”,使读者能够通过对问题的解答重新回顾、熟悉所学知识,举一反三,为进一步学习做好充分的准备。
读者对象
初学编程的自学者;编程爱好者;大中专院校的老师和学生;相关培训机构的老师和学员;做毕业设计的学生;初、中级程序开发人员;程序测试及维护人员;参加实习的“菜鸟”程序员
读者服务
学习本书时,请先扫描封底的权限二维码(需要刮开涂层)获取学习权限,然后即可免费学习书中的所有线上线下资源。本书所附赠的各类学习资源,读者可登录清华大学出版社网站,在对应图书页面下获取其下载方式。也可扫描图书封底的“文泉云盘”二维码,获取其下载方式。为了方便解决本书疑难问题,读者朋友可加我们的企业QQ,也可以登录明日科技官方网站留言,我们将竭诚为您服务。
评论
还没有评论。