Java从入门到精通 第2版 实例版PDF电子书下载
- 电子书积分:16 积分如何计算积分?
- 作 者:本书编委会著
- 出 版 社:北京:清华大学出版社
- 出版年份:2017
- ISBN:9787302462474
- 页数:549 页
第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.2 搭建Java环境 5
1.2.1 JDK下载 5
1.2.2 JDK安装 7
1.2.3 配置JDK 8
1.2.4 测试开发环境 10
1.3 第一个Java程序 10
1.4 本章小结 13
第2章 熟悉Eclipse开发工具 14
2.1 熟悉Eclipse 15
2.1.1 Eclipse简介 15
2.1.2 下载Eclipse 15
2.1.3 安装Eclipse的中文语言包 17
2.1.4 Eclipse的配置与启动 20
2.1.5 Eclipse工作台 20
2.1.6 透视图与视图 22
2.1.7 菜单栏 22
2.1.8 工具栏 25
2.1.9 “包资源管理器”视图 26
2.1.10 “控制台”视图 27
2.2 使用Eclipse 27
2.2.1 创建Java项目 27
2.2.2 创建Java类文件 27
2.2.3 使用编辑器编写程序代码 28
2.2.4 运行Java程序 31
2.3 程序调试 31
2.4 本章小结 33
第3章 Java语言基础 34
3.1 Java程序的基本结构 35
3.2 标识符和关键字 36
3.2.1 标识符 36
3.2.2 关键字 37
3.3 基本数据类型 38
3.3.1 整数类型 38
3.3.2 浮点类型 40
3.3.3 字符类型 41
3.3.4 布尔类型 43
3.4 变量与常量 43
3.4.1 声明变量 43
3.4.2 声明常量 44
3.4.3 变量的有效范围 45
3.5 运算符 46
3.5.1 赋值运算符 46
3.5.2 算术运算符 47
3.5.3 自增和自减运算符 48
3.5.4 比较运算符 49
3.5.5 逻辑运算符 50
3.5.6 位运算符 51
3.5.7 三元运算符 53
3.5.8 运算符优先级 54
3.5.9 范例1:不用其他变量实现两变量互换 55
3.5.10 范例2:判断数字的奇偶性 55
3.6 类型转换 56
3.6.1 自动类型转换 56
3.6.2 强制类型转换 57
3.6.3 范例3:类型转换实战 58
3.7 代码注释和编码规范 59
3.7.1 代码注释 59
3.7.2 编码规范 60
3.8 经典范例 61
3.8.1 经典范例1:判断某一年是否是闰年 61
3.8.2 经典范例2:求球形的体积 62
3.9 本章小结 62
3.10 实战练习 63
第4章 流程控制 64
4.1 复合语句 65
4.2 条件语句 66
4.2.1 if条件语句 66
4.2.2 switch多分支语句 70
4.2.3 范例1:验证登录信息的合法性 72
4.2.4 范例2:为新员工分配部门 73
4.3 循环语句 74
4.3.1 while循环语句 74
4.3.2 do…while循环语句 75
4.3.3 for循环语句 77
4.3.4 范例3:使用while循环遍历数组 79
4.3.5 范例4:使用for循环输出九九乘法表 79
4.4 跳转语句 80
4.4.1 break语句 80
4.4.2 continue语句 81
4.4.3 return语句 82
4.4.4 范例5:终止循环体 82
4.4.5 范例6:循环体的过滤器 83
4.5 经典范例 84
4.5.1 经典范例1:使用for循环输出空心的菱形 84
4.5.2 经典范例2:使用for循环输出杨辉三角 86
4.6 本章小结 87
4.7 实战练习 87
第5章 数组 88
5.1 数组概述 89
5.2 一维数组 89
5.2.1 创建一维数组 90
5.2.2 初始化一维数组 91
5.2.3 范例1:求一维数组各元素的和 91
5.2.4 范例2:获取一维数组的最小值 92
5.3 多维数组 93
5.3.1 二维数组 93
5.3.2 三维数组 95
5.3.3 范例3:对矩阵进行转置运算 96
5.3.4 范例4:求方阵的迹 97
5.4 数组的基本操作 98
5.4.1 遍历数组 98
5.4.2 填充替换数组元素 100
5.4.3 对数组进行排序 101
5.4.4 复制数组 102
5.4.5 范例5:对比一维、二维数组所占内存 104
5.4.6 范例6:使用直接插入排序法排序 105
5.5 经典范例 106
5.5.1 经典范例1:使用冒泡排序法排序 106
5.5.2 经典范例2:输出九宫格 107
5.6 本章小结 108
5.7 实战练习 108
第6章 字符串 109
6.1 创建字符串 110
6.2 字符串操作 110
6.2.1 字符串连接 110
6.2.2 获取字符串信息 112
6.2.3 去除字符串中的空格 114
6.2.4 字符串替换 116
6.2.5 判断字符串 117
6.2.6 字母大小写转换 119
6.2.7 字符串分割 120
6.2.8 范例1:根据指定分割符把字符串分行 122
6.2.9 范例2:判断字符串是否是数字格式 123
6.3 格式化字符串 123
6.3.1 格式化方法 124
6.3.2 日期格式化 124
6.3.3 时间格式化 126
6.3.4 日期时间组合格式化 127
6.3.5 常规类型格式化 128
6.3.6 范例3:将金额格式化成大写 129
6.3.7 范例4:将数字格式化成货币格式 130
6.4 正则表达式 131
6.4.1 判断是否符合正则表达式的方法 131
6.4.2 正则表达式的元字符 132
6.4.3 正则表达式的限定符 133
6.4.4 方括号中元字符的含义 134
6.4.5 范例5:验证IP地址的合法性 135
6.4.6 范例6:计算文章中汉字的个数 136
6.5 字符串生成器 137
6.5.1 StringBuilder类 137
6.5.2 StringBuilder类的常用方法 138
6.5.3 范例7:将汉字和字母转换成Unicode码 141
6.5.4 范例8:去掉字符串中重复的字符 142
6.6 经典范例 142
6.6.1 经典范例1:实现字符串加密 142
6.6.2 经典范例2:验证字符串是否回文 143
6.7 本章小结 144
6.8 实战练习 144
第7章 类和对象 145
7.1 面向对象概述 146
7.1.1 什么是对象 146
7.1.2 什么是类 147
7.1.3 面向对象的特点 148
7.2 类 150
7.2.1 类的构造方法 150
7.2.2 类的主方法 151
7.2.3 成员变量 152
7.2.4 成员方法 153
7.2.5 局部变量 154
7.2.6 局部变量的有效范围 154
7.2.7 静态变量、常量和方法 155
7.2.8 权限修饰符 157
7.2.9 this关键字 158
7.2.10 范例1:自定义图书类 159
7.2.11 范例2:温度单位转换工具 160
7.3 对象 161
7.3.1 对象的创建 161
7.3.2 访问对象的属性和行为 162
7.3.3 对象的引用 164
7.3.4 对象的比较 165
7.3.5 对象的销毁 166
7.3.6 范例3:统计图书销量 167
7.3.7 范例4:重新计算对象的哈希码 168
7.4 经典范例 169
7.4.1 经典范例1:汉诺塔问题求解 169
7.4.2 经典范例2:单例模式的应用 170
7.5 本章小结 171
7.6 实战练习 172
第2篇 技术篇 174
第8章 接口、继承与多态 174
8.1 接口的使用 175
8.1.1 接口的定义 175
8.1.2 接口的实现 175
8.1.3 范例1:图片的不同格式保存 176
8.1.4 范例2:为汽车增加GPS定位功能 178
8.2 类的继承 180
8.2.1 继承的实现 180
8.2.2 继承中的重写 181
8.2.3 使用super关键字 182
8.2.4 范例3:经理与员工的差异 184
8.2.5 范例4:重写父类中的方法 185
8.3 多态 186
8.3.1 什么是多态 186
8.3.2 范例5:计算几何图形的面积 188
8.3.3 范例6:简单的汽车销售商场 189
8.4 经典范例 190
8.4.1 经典范例1:使用Comparable接口自定义排序 190
8.4.2 经典范例2:动态设置类的私有域 192
8.5 本章小结 194
8.6 实战练习 194
第9章 类的高级特性 195
9.1 抽象类 196
9.2 内部类 198
9.2.1 成员内部类 198
9.2.2 局部内部类 201
9.2.3 匿名内部类 202
9.2.4 静态内部类 203
9.2.5 内部类的继承 204
9.2.6 范例1:局部内部类设置闹钟 204
9.2.7 范例2:静态内部类求极值 206
9.3 Class类与Java反射 207
9.3.1 访问构造方法 208
9.3.2 访问成员变量 211
9.3.3 访问方法 214
9.3.4 范例3:运用反射查看类的成员 217
9.3.5 范例4:动态调用类中方法 218
9.4 经典范例 219
9.4.1 经典范例1:利用反射重写toString()方法 219
9.4.2 经典范例2:普通内部类的简单应用 220
9.5 本章小结 221
9.6 实战练习 221
第10章 Java集合类 222
10.1 集合类概述 223
10.2 集合类接口的常用方法 223
10.2.1 List接口的常用方法 223
10.2.2 Set接口的常用方法 225
10.2.3 Map接口的常用方法 226
10.2.4 范例1:用List集合传递学生信息 227
10.2.5 范例2:Map集合二级联动 229
10.3 集合类接口的实现类 231
10.3.1 List接口的实现类 231
10.3.2 Set接口的实现类 232
10.3.3 Map接口的实现类 233
10.3.4 范例3:for循环遍历ArrayList 235
10.3.5 范例4:用动态数组保存学生姓名 236
10.4 迭代器 237
10.4.1 迭代器的创建和使用 237
10.4.2 范例5:Iterator遍历ArrayList 238
10.4.3 范例6:ListIterator遍历ArrayList 239
10.5 经典范例 240
10.5.1 经典范例1:制作电子词典 240
10.5.2 经典范例2:制作手机电话本 242
10.6 本章小结 243
10.7 实战练习 243
第11章 异常处理 244
11.1 异常概述 245
11.2 异常的分类 245
11.2.1 可控式异常 246
11.2.2 运行时异常 247
11.2.3 范例1:算术异常 249
11.2.4 范例2:数组下标越界异常 249
11.3 获取异常信息 250
11.4 处理异常 252
11.4.1 使用try…catch处理异常 252
11.4.2 使用try…catch…finally处理异常 252
11.4.3 使用try…finally处理异常 254
11.5 抛出异常 255
11.5.1 使用throws声明抛出异常 255
11.5.2 使用throw语句抛出异常 257
11.5.3 范例3:方法中抛出异常 258
11.5.4 范例4:方法上抛出异常 259
11.6 自定义异常 260
11.6.1 创建自定义异常类 260
11.6.2 使用自定义异常类 260
11.7 异常的使用原则 261
11.8 经典范例 261
11.8.1 经典范例1:捕获单个异常 261
11.8.2 经典范例2:数据库操作异常 262
11.9 本章小结 263
11.10 实战练习 264
第12章 输入/输出 265
12.1 流概述 266
12.2 输入/输出流 266
12.2.1 输入流 266
12.2.2 输出流 268
12.2.3 范例1:显示指定类型的文件 269
12.2.4 范例2:查找替换文本文件内容 270
12.3 File类 271
12.3.1 文件的创建与删除 271
12.3.2 获取文件信息 273
12.3.3 范例3:文件批量重命名 274
12.3.4 范例4:快速批量移动文件 274
12.4 文件输入/输出流 275
12.4.1 FileInputStream与FileOutputStream类 275
12.4.2 FileReader类和FileWriter类 277
12.4.3 范例5:窗体动态加载磁盘文件 279
12.4.4 范例6:删除文件夹中所有文件 280
12.5 带缓存的输入/输出流 281
12.5.1 BufferedInputStream类与BufferedOutputStream类 281
12.5.2 BufferedReader类与BufferedWriter类 282
12.5.3 范例7:读取属性文件单个属性值 283
12.5.4 范例8:合并多个TXT文件 284
12.6 数据输入/输出流 285
12.7 ZIP压缩输入/输出流 286
12.7.1 压缩文件 287
12.7.2 解压缩ZIP文件 289
12.7.3 范例9:压缩包解压到指定文件夹 290
12.7.4 范例10:压缩所有子文件夹 291
12.8 经典范例 292
12.8.1 经典范例1:简单的投票软件 292
12.8.2 经典范例2:电子通讯录 293
12.9 本章小结 294
12.10 实战练习 294
第13章 Swing程序设计 295
13.1 Swing概述 296
13.2 Swing常用窗体 296
13.2.1 JFrame框架窗体 296
13.2.2 JDialog窗体 298
13.2.3 范例1:设置窗体大小 299
13.2.4 范例2:禁止改变窗体的大小 300
13.3 标签组件与图标 300
13.3.1 标签的使用 300
13.3.2 图标的使用 301
13.3.3 范例3:为图片添加说明 303
13.4 常用布局管理器 304
13.4.1 绝对布局 305
13.4.2 流布局管理器 305
13.4.3 边界布局管理器 307
13.4.4 网格布局管理器 308
13.5 常用面板 309
13.5.1 JPanel面板 309
13.5.2 JScrollPane面板 310
13.6 按钮组件 311
13.6.1 提交按钮组件 311
13.6.2 单选按钮组件 312
13.6.3 复选框组件 313
13.7 列表组件 314
13.7.1 下拉列表框组件 314
13.7.2 列表框组件 316
13.8 文本组件 318
13.8.1 文本框组件 318
13.8.2 密码框组件 319
13.8.3 文本域组件 319
13.8.4 范例4:给文本域设置背景图片 320
13.8.5 范例5:给文本区设置背景图片 321
13.9 经典范例 322
13.9.1 经典范例1:设置窗体标题栏图标 322
13.9.2 经典范例2:随机更换窗体背景 323
13.10 本章小结 324
13.11 实战练习 324
第3篇 高级篇 326
第14章 高级事件处理 326
14.1 键盘事件 327
14.2 鼠标事件 329
14.3 窗体事件 331
14.3.1 捕获窗体焦点变化事件 331
14.3.2 捕获窗体状态变化事件 332
14.3.3 捕获其他窗体事件 333
14.4 选项事件 335
14.5 表格模型事件 336
14.6 经典范例 339
14.6.1 经典范例1:模拟相机拍摄 339
14.6.2 经典范例2:打地鼠游戏 340
14.7 本章小结 342
14.8 实战练习 342
第15章 多线程 343
15.1 线程简介 344
15.2 实现线程的两种方式 344
15.2.1 继承Thread类 345
15.2.2 实现Runnable接口 346
15.2.3 范例1:查看线程的运行状态 348
15.2.4 范例2:查看JVM中的线程名 350
15.3 线程的生命周期 351
15.4 操作线程的方法 352
15.4.1 线程的休眠 352
15.4.2 线程的加入 354
15.4.3 线程的中断 356
15.4.4 线程的礼让 357
15.4.5 范例3:查看和修改线程优先级 357
15.4.6 范例4:休眠当前线程 358
15.5 线程的优先级 359
15.6 线程同步 361
15.6.1 线程安全 361
15.6.2 线程同步机制 362
15.7 线程间的通信 364
15.8 经典范例 366
15.8.1 经典范例1:线程的插队运行 366
15.8.2 经典范例2:查看和修改线程名称 368
15.9 本章小结 369
15.10 实战练习 370
第16章 网络通信 371
16.1 网络程序设计基础 372
16.1.1 局域网与互联网 372
16.1.2 网络协议 372
16.1.3 端口和套接字 373
16.1.4 范例1:获得内网的所有IP地址 374
16.1.5 范例2:解析网页中的内容 375
16.2 TCP程序设计基础 376
16.2.1 InetAddress类 377
16.2.2 ServerSocket类 378
16.2.3 TCP网络程序 379
16.2.4 范例3:设置等待连接的超时时间 382
16.2.5 范例4:获得Socket信息 383
16.3 UDP程序设计基础 384
16.3.1 DatagramPacket类 385
16.3.2 DatagramSocket类 385
16.3.3 UDP网络程序 386
16.4 经典范例 389
16.4.1 经典范例1:聊天室服务器端 389
16.4.2 经典范例2:聊天室客户端 391
16.5 本章小结 393
16.6 实战练习 393
第17章 JDBC操作数据库 394
17.1 JDBC概述 395
17.1.1 数据库概述 395
17.1.2 JDBC技术 396
17.2 JDBC的常用类和接口 396
17.2.1 DriverManager类 396
17.2.2 Connection接口 397
17.2.3 Statement接口 398
17.2.4 PreparedStatement接口 398
17.2.5 ResultSet接口 398
17.3 通过JDBC操作数据库 399
17.3.1 加载数据库驱动 399
17.3.2 建立连接 400
17.3.3 向数据库添加数据 401
17.3.4 获得查询结果集 402
17.3.5 更改数据库中的数据 403
17.3.6 删除数据库中的数据 405
17.3.7 模糊查询 405
17.3.8 范例1:将复选框内容存到数据库 406
17.3.9 范例2:查询三年级二班的学生信息 408
17.4 经典范例 409
17.4.1 经典范例1:管理学生信息 409
17.4.2 经典范例2:权限管理 415
17.5 本章小结 420
17.6 实战练习 420
第18章 Swing高级组件 421
18.1 利用JTable类直接创建表格 422
18.1.1 创建表格 422
18.1.2 定制表格 424
18.1.3 操纵表格 427
18.1.4 范例1:列表元素与提示信息 429
18.1.5 范例2:监听列表单击事件 430
18.2 表格模型与表格 431
18.2.1 利用表格模型创建表格 431
18.2.2 维护表格模型 433
18.2.3 范例3:实现自动排序列表 435
18.2.4 范例4:可以预览字体的列表 436
18.3 提供行标题栏的表格 437
18.3.1 提供行标题栏的表格 437
18.3.2 范例5:提供行标题栏的表格 438
18.4 Swing树组件 441
18.4.1 简单的树 441
18.4.2 处理选中节点事件 443
18.4.3 遍历树节点 445
18.4.4 定制树 446
18.4.5 维护树模型 448
18.4.6 处理展开节点事件 450
18.4.7 范例6:为树节点增加提示信息 452
18.4.8 范例7:双击编辑树节点功能 453
18.5 经典范例 454
18.5.1 经典范例1:编写中国省市信息树 454
18.5.2 经典范例2:监听节点的选择事件 455
18.6 本章小结 456
18.7 实战练习 456
第19章 高级布局管理器 457
19.1 箱式布局管理器 458
19.2 卡片布局管理器 460
19.3 网格组布局管理器 463
19.4 弹簧布局管理器 468
19.4.1 使用弹簧布局管理器 469
19.4.2 使用弹簧和支柱 471
19.4.3 利用弹簧控制组件大小 473
19.5 经典范例 473
19.5.1 经典范例1:制作圆形布局管理器 473
19.5.2 经典范例2:制作阶梯布局管理器 474
19.6 本章小结 475
19.7 实战练习 475
第20章 AWT绘图技术 476
20.1 绘制图形 477
20.1.1 Graphics 477
20.1.2 Graphics2D 479
20.1.3 范例1:绘制指定角度的填充扇形 481
20.1.4 范例2:绘制多边形 481
20.2 绘图颜色与笔画属性 482
20.2.1 设置颜色 482
20.2.2 笔画属性 483
20.2.3 范例3:为图形填充渐变色 484
20.2.4 范例4:设置笔画的粗细 485
20.3 绘制文本 486
20.3.1 设置字体 486
20.3.2 显示文字 486
20.3.3 范例5:设置文本的字体 488
20.3.4 范例6:设置文本的图形和颜色 488
20.4 图片处理 489
20.4.1 绘制图片 489
20.4.2 放大与缩小 490
20.4.3 图片翻转 492
20.4.4 图片旋转 494
20.4.5 图片倾斜 496
20.4.6 范例7:图形的交运算 497
20.4.7 范例8:图形的异或运算 498
20.5 经典范例 499
20.5.1 经典范例1:绘制花瓣 499
20.5.2 经典范例2:绘制艺术图案 500
20.6 本章小结 501
20.7 实战练习 502
第4篇 项目篇 504
第21章 酒店管理系统 504
21.1 概述 505
21.2 系统分析 505
21.3 系统设计 505
21.3.1 系统目标 505
21.3.2 系统功能结构 506
21.3.3 系统预览 506
21.3.4 业务流程图 507
21.3.5 文件夹结构设计 508
21.4 数据库设计 509
21.4.1 数据库分析 509
21.4.2 数据库概念设计 509
21.4.3 数据库逻辑结构设计 510
21.4.4 视图设计 510
21.5 公共模块设计 511
21.5.1 编写数据库连接类 511
21.5.2 封装常用的操作数据库的方法 512
21.5.3 自定义表格组件 513
21.5.4 编写利用正则表达式验证数据合法性的方法 514
21.6 主窗体设计 515
21.7 用户登录窗口设计 517
21.8 开台签单工作区设计 522
21.8.1 开台签单工作区功能概述 522
21.8.2 开台签单工作区技术分析 523
21.8.3 开台签单工作区实现过程 523
21.8.4 单元测试 528
21.9 自动结账工作区设计 529
21.9.1 自动结账工作区功能概述 529
21.9.2 自动结账工作区技术分析 530
21.9.3 自动结账工作区实现过程 530
21.10 结账报表工作区设计 531
21.10.1 结账报表工作区功能概述 531
21.10.2 结账报表工作区技术分析 532
21.10.3 结账报表工作区实现过程 533
21.10.4 单元测试 536
21.11 后台管理工作区设计 537
21.11.1 后台管理工作区功能概述 537
21.11.2 后台管理工作区技术分析 538
21.11.3 后台管理工作区实现过程 538
21.11.4 单元测试 545
21.12 开发技巧与难点分析 546
21.13 使用Visio逆向生成数据库E-R图 547
21.14 本章小结 549
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《Python3从入门到实战》董洪伟 2019
- 《CINEMA 4D新手快速进阶实例教学 商迪》商迪 2020
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019
- 《小提琴入门新教程 第3册》王中男著 2018
- 《小提琴入门新教程 第2册》王中男编著 2017
- 《Dreamweaver CC 2018标准实例教程 中文版》杨雪静,胡仁喜编著 2019
- 《新手养花从入门到精通》徐帮学编 2019
- 《中风偏瘫 脑萎缩 痴呆 最新治疗原则与方法》孙作东著 2004
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《王蒙文集 新版 35 评点《红楼梦》 上》王蒙著 2020
- 《TED说话的力量 世界优秀演讲者的口才秘诀》(坦桑)阿卡什·P.卡里亚著 2019
- 《燕堂夜话》蒋忠和著 2019
- 《经久》静水边著 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《微表情密码》(波)卡西亚·韦佐夫斯基,(波)帕特里克·韦佐夫斯基著 2019
- 《看书琐记与作文秘诀》鲁迅著 2019
- 《酒国》莫言著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019