新書推薦:
《
古典的回響:溪客舊廬藏明清文人繪畫
》
售價:NT$
1990.0
《
掌故家的心事
》
售價:NT$
390.0
《
孤独传:一种现代情感的历史
》
售價:NT$
390.0
《
家、金钱和孩子
》
售價:NT$
295.0
《
量价关系——透视股票涨跌脉络
》
售價:NT$
340.0
《
二十四节气生活美学
》
售價:NT$
340.0
《
西班牙内战:秩序崩溃与激荡的世界格局:1936-1939
》
售價:NT$
990.0
《
基于鲲鹏的分布式图分析算法实战
》
售價:NT$
495.0
|
編輯推薦: |
真正适合零基础读者入门Java的完全自学宝典 技术讲解-范例演练-技术解惑-课后练习贯穿全书,全面掌握Java语言开发 两大综合实战案例:Java语言开发大数据挖掘和分析系统、微信商城系统,帮助读者真正实现具备项目开发的能力。 《Java编程从入门到实践》具有如下特色: 一、全新版本展示Java新特性 本书以全新的Java 14为基础,详解Java语言的所有核心开发知识,而且重点讲解Java 9、Java 10、Java 11、Java 12、Java 13和Java 14的语法新特性。这是市面上其他图书所不具备的。 二、从学习者实际需求出发 涵盖了入门类、范例类和项目实战类3类图书的内容,并且对实战知识不是点到为止地讲解,而是深入地探讨,同时用配套资源来扩展实战案例,用网络答疑的方式解决读者学习中的问题。通过本书的学习,初学者可以胜任Java开发的工作。 三、6大特色,为初学者入门到精通Java保驾护航 1.以从入门到实践的写法构建内容,让读者轻松入门。 为了照顾初学者的学习规律,本书在将入门知识讲透的同时,用大量实例演练基础知识的应用,让读者真正做到入门到应用。 2.以技术解惑贯穿
|
內容簡介: |
本书循序渐进地讲解了Java语言的核心语法知识,并通过大量的实例讲解了各个知识点的具体用法,本书分为26章。第0~2章是Java的基础知识部分,包括学习本书必备的知识、Java开发基础、Java开发工具;第3~10章为核心语法部分,包括Java基础语法、条件语句、循环语句和跳转语句、数组、面向对象基础、面向对象编程进阶、构造器、多态和引用类型、内部类、匿名类和枚举类;第11~16章为Java开发进阶提高部分,包括集合、泛型、Java常用类库、异常处理、IO文件处理和流处理;第17~23章为Java典型应用部分,包括JavaFX桌面程序开发基础、JavaFX图像、布局和组件、JavaFX事件处理、数据库编程、开发互联网程序、开发多线程Java程序、开发网络爬虫程序;第24~25章为综合实战部分,通过两个大型实例的实现过程,详细讲解了使用Java语言开发大数据挖掘和分析系统(网络爬虫 JSP MySQL 大数据分析)和微信商城系统(SpringBoot Vue 微信小程序)的过程。 本书适合Java开发人员阅读,也适合计算机相关专业的师生阅读。
|
目錄:
|
目录
第0章 学习本书的必备知识 1
(视频总计32分钟)
0.1 计算机应用基础 2
0.1.1 中央处理器 2
0.1.2 比特 2
0.1.3 字节 2
0.1.4 二进制 2
0.1.5 常用的编码格式 3
0.2 Java学习路线图 4
0.3 配套资源使用说明 5
0.4 课后练习 6
第 1章 Java开发基础 7
(视频总计50分钟,技术解惑6个)
1.1 初步认识Java语言 8
1.1.1 Java语言介绍 8
1.1.2 Java语言的特点 8
1.2 搭建Java运行环境 9
1.2.1 安装JDK 9
1.2.2 配置开发环境
Windows 7 12
1.2.3 配置开发环境
Windows 10 13
1.3 编写第 一个Java程序 14
1.3.1 第 一个Java程序 14
1.3.2 关键字 15
1.3.3 标识符 15
1.3.4 注释 16
1.3.5 方法main 17
1.3.6 控制台的输入和输出 17
1.4 编译并运行Java程序 17
1.4.1 编译Java程序 17
1.4.2 运行Java代码 18
1.4.3 Java 11新特性:新的
程序运行方式 18
1.5 技术解惑 19
1.5.1 遵循源文件命名规则 19
1.5.2 忽视系统文件的扩展名 19
1.5.3 大小写问题 19
1.5.4 到底用不用IDE工具 19
1.5.5 区分JRE和JDK 20
1.5.6 充分利用Java API文档 20
1.6 课后练习 20
第 2章 选择Java开发工具 21
(视频总计28分钟)
2.1 使用Eclipse 22
2.1.1 Eclipse介绍 22
2.1.2 获得并安装Eclipse 22
2.1.3 使用Eclipse新建一个
Java工程 25
2.1.4 编译并运行Eclipse工程 27
2.1.5 使用Eclipse打开一个
Java工程打开本书
配套资源中的项目 27
2.2 使用IntelliJ IDEA 28
2.2.1 搭建IntelliJ IDEA开发
环境 28
2.2.2 使用IntelliJ IDEA
新建Java工程 30
2.2.3 使用IntelliJ IDEA
运行Java程序 31
2.3 使用手机开发Java程序 32
2.4 课后练习 32
第3章 Java基础语法 33
(视频总计120分钟,技术解惑3个)
3.1 常量和变量 34
3.1.1 常量 34
3.1.2 变量 35
3.2 数据类型 36
3.2.1 Java数据类型的分类 36
3.2.2 基本数据类型的
取值范围 37
3.2.3 字符型 37
3.2.4 整型 38
3.2.5 浮点型 38
3.2.6 布尔型 39
3.3 运算符 40
3.3.1 算术运算符 40
3.3.2 关系运算符和布尔逻辑
运算符 42
3.3.3 位逻辑运算符 43
3.3.4 条件运算符 44
3.3.5 赋值运算符 44
3.3.6 运算符的优先级 45
3.4 类型转换 45
3.4.1 自动类型转换 46
3.4.2 强制类型转换 46
3.5 技术解惑 47
3.5.1 在定义常量时的
注意事项 47
3.5.2 char类型中单引号的意义 47
3.5.3 正无穷和负无穷的问题 47
3.6 课后练习 47
第4章 条件语句 48
(视频总计50分钟,技术解惑3个)
4.1 使用if语句 49
4.1.1 if语句 49
4.1.2 使用ifelse语句 49
4.1.3 对多种情况进行判断 50
4.2 使用switch选择语句 51
4.2.1 switch语句的形式 51
4.2.2 无break的情况 52
4.2.3 default可以不在末尾 53
4.3 switch语句和表达式
(Java 14新特性) 53
4.4 技术解惑 54
4.4.1 ifelse语句的意义 54
4.4.2 switch语句和
ifelse if语句的选择 54
4.4.3 if和switch的选择 55
4.5 课后练习 55
第5章 循环语句和跳转语句 56
(视频总计58分钟,技术解惑1个)
5.1 循环语句 57
5.1.1 基本for循环 57
5.1.2 for循环语句的嵌套 58
5.1.3 使用while循环语句 58
5.1.4 使用dowhile循环语句 59
5.2 使用跳转语句 60
5.2.1 break语句的应用 60
5.2.2 使用return语句 62
5.2.3 使用continue跳转语句 62
5.3 技术解惑 63
5.4 课后练习 63
第6章 数组 64
(视频总计59分钟,技术解惑2个)
6.1 使用一维数组 65
6.1.1 声明一维数组 65
6.1.2 创建一维数组 65
6.1.3 初始化一维数组 66
6.2 使用二维数组 67
6.2.1 声明二维数组 67
6.2.2 创建二维数组 67
6.2.3 初始化二维数组 68
6.3 使用三维数组 69
6.3.1 声明三维数组 69
6.3.2 创建并初始化三维数组 69
6.4 操作数组 70
6.4.1 复制数组中的元素 70
6.4.2 比较数组的大小 71
6.4.3 对数组中的元素排序 72
6.4.4 搜索数组中的元素 72
6.4.5 使用foreach遍历数组 73
6.5 技术解惑 73
6.5.1 动态初始化数组的规则 73
6.5.2 数组的初始化 74
6.6 课后练习 74
第7章 面向对象基础 75
(视频总计117分钟,技术解惑2个)
7.1 面向对象的基础 76
7.1.1 面向对象的定义 76
7.1.2 Java的面向对象编程 76
7.1.3 Java面向对象的几个核心
概念 76
7.2 创建类 78
7.2.1 定义类 78
7.2.2 定义属性 79
7.2.3 定义方法 79
7.2.4 定义构造器 79
7.3 修饰符 80
7.3.1 使用public修饰符 80
7.3.2 使用private修饰符 81
7.3.3 使用protected修饰符 81
7.4 使用方法 82
7.4.1 传递方法参数 82
7.4.2 长度可变的方法 83
7.4.3 递归方法 84
7.5 使用this 85
7.6 使用类和对象 85
7.6.1 创建和使用对象 86
7.6.2 使用静态变量和
静态方法 86
7.7 使用抽象类和抽象方法 87
7.7.1 抽象类和抽象方法的
基础 87
7.7.2 抽象类必须有一个抽象
方法 88
7.8 使用包 89
7.8.1 定义软件包 89
7.8.2 在Eclipse中定义软件包 89
7.8.3 在程序中插入软件包 90
7.9 技术解惑 91
7.9.1 static修饰的作用 91
7.9.2 数组内是同一类型的
数据 91
7.10 课后练习 91
第8章 面向对象编程进阶 92
(视频总计96分钟,技术解惑3个)
8.1 继承 93
8.1.1 定义继承 93
8.1.2 调用父类的构造方法 93
8.1.3 访问父类的属性和方法 94
8.1.4 多层继承 95
8.2 重写和重载 97
8.2.1 重写 97
8.2.2 重载 98
8.3 使用接口 99
8.3.1 定义接口 99
8.3.2 接口中的常量 99
8.3.3 接口中的方法 100
8.3.4 引用接口 101
8.3.5 接口间的继承 102
8.3.6 接口的私有方法
(Java 9新增) 103
8.4 技术解惑 106
8.4.1 重写方法的注意事项 106
8.4.2 重写和重载的区别 106
8.4.3 接口和抽象类的区别与
联系 106
8.5 课后练习 106
第9章 构造器、多态和引用类型 107
(视频总计59分钟,技术解惑3个)
9.1 使用构造器 108
9.1.1 初始化构造器 108
9.1.2 构造器重载 108
9.1.3 调用父类构造器 109
9.2 使用多态 110
9.2.1 定义多态 110
9.2.2 使用多态 110
9.3 引用类型 112
9.3.1 4种引用类型 112
9.3.2 引用变量的强制类型
转换 113
9.4 组合 114
9.5 初始化块 116
9.5.1 初始化块介绍 116
9.5.2 使用静态初始化块 117
9.6 技术解惑 119
9.6.1 this在构造器中的作用 119
9.6.2 强制类型转换的局限性 119
9.6.3 继承和组合的选择 119
9.7 课后练习 119
第 10章 内部类、匿名类和枚举类 120
(视频总计75分钟,技术解惑2个)
10.1 使用内部类 121
10.1.1 内部类概述 121
10.1.2 非静态内部类 121
10.1.3 成员内部类 123
10.1.4 使用局部内部类 123
10.2 使用匿名类 124
10.2.1 定义匿名类 125
10.2.2 匿名内部类 125
10.2.3 匿名内部类使用final
形参 126
10.3 使用枚举类 127
10.3.1 模拟枚举类 127
10.3.2 枚举类的方法 128
10.3.3 枚举类型 129
10.4 嵌套访问控制(Java 11
新增) 130
10.4.1 嵌套访问控制基础 130
10.4.2 在Java 11程序中访问
嵌套成员 131
10.5 技术解惑 132
10.5.1 类的4种权限 132
10.5.2 手工实现枚举类的
缺点 132
10.6 课后练习 132
第 11章 集合 133
(视频总计124分钟,技术解惑4个)
11.1 Java中的集合类 134
11.2 使用Collection接口和Iterator
接口 135
11.2.1 Collection接口概述 135
11.2.2 Iterator接口概述 136
11.2.3 使用Collection接口中的
方法操作集合里的
元素 136
11.3 使用Set接口 137
11.3.1 Set接口概述 137
11.3.2 使用HashSet 137
11.3.3 使用TreeSet类 139
11.4 使用List接口 140
11.4.1 List接口基础 140
11.4.2 根据索引操作集合内的
元素 141
11.5 使用Map接口 141
11.5.1 Map接口中的方法 142
11.5.2 使用HashMap和
Hashtable实现类 142
11.5.3 使用SortedMap接口和
TreeMap实现类 143
11.6 使用Queue接口 145
11.6.1 Queue接口中的成员 145
11.6.2 LinkedList类 145
11.7 使用集合工具Collections类 147
11.7.1 排序操作 147
11.7.2 查找和替换操作 148
11.8 创建不可变的List、Set和
Map(Java 9新增) 149
11.8.1 Java 9以前版本的
解决方案 149
11.8.2 Java 9版本的解决
方案 150
11.9 使用var类型推断(Java 10
新增) 151
11.9.1 var类型推断基础 151
11.9.2 使用var声明局部变量 152
11.10 使用新的默认方法(Java 11
新增) 152
11.11 技术解惑 153
11.11.1 使用EnumSet类的
注意事项 153
11.11.2 ArrayList和Vector的
区别 153
11.11.3 分析Map类的性能 153
11.11.4 LinkedList、ArrayList、
Vector的性能问题 154
11.12 课后练习 154
第 12章 使用泛型 155
(视频总计61分钟,技术解惑3个)
12.1 泛型基础 156
12.1.1 泛型的优点 156
12.1.2 类型检查 156
12.1.3 使用泛型 158
12.1.4 在类中使用泛型 158
12.2 类型通配符 159
12.2.1 使用泛型通配符 159
12.2.2 泛型限定 160
12.3 泛型方法 161
12.3.1 泛型方法介绍 162
12.3.2 使用泛型方法 162
12.4 使用泛型接口 163
12.5 泛型继承 164
12.5.1 以泛型类为父类 164
12.5.2 将非泛型类作为父类 166
12.6 强制类型转换 166
12.7 技术解惑 167
12.7.1 Java语言中泛型的
本质 167
12.7.2 泛型类的继承规则 167
12.7.3 使用泛型的原则和
注意事项 168
12.8 课后练习 168
第 13章 Java常用类库(上) 169
(视频总计73分钟,技术解惑2个)
13.1 字符串 170
13.1.1 字符串的初始化 170
13.1.2 String类 170
13.1.3 Java 11新特性:
新增的String方法 173
13.2 使用StringBuffer类 175
13.2.1 StringBuffer类基础 175
13.2.2 使用字符追加方法 176
13.3 使用Runtime类 177
13.3.1 Runtime类的常用
方法 177
13.3.2 使用Runtime类 177
13.4 程序国际化 178
13.4.1 国际化基础 178
13.4.2 Locale类 179
13.4.3 ResourceBundle类 179
13.4.4 处理动态文本 180
13.5 使用System类 181
13.5.1 使用System类 181
13.5.2 垃圾对象的回收 182
13.6 技术解惑 183
13.6.1 StringBuffer和String的
异同 183
13.6.2 通过System类获取
本机的全部环境属性 183
13.7 课后练习 183
第 14章 Java常用类库(下) 184
(视频总计85分钟,技术解惑3个)
14.1 使用日期处理类 185
14.1.1 使用Date类 185
14.1.2 使用Calendar类获取
当前的时间 185
14.1.3 使用DateFormat类
格式化处理时间 186
14.2 使用Math类 187
14.3 使用Random类生成随机数 188
14.4 使用NumberFormat类格式化
处理数字 189
14.5 复制对象 190
14.6 使用Comparable接口操作
数组 191
14.6.1 Comparable接口
介绍 191
14.6.2 使用Comparator
接口 193
14.7 Observable类和Observer
接口(Java 9被放弃) 194
14.8 使用正则表达式 196
14.8.1 正则表达式基础 196
14.8.2 Java中的正则
表达式类 197
14.8.3 验证一个字符串是否为
合法的日期格式 197
14.8.4 String类和正则
表达式 198
14.8.5 Java 9新增的正则
表达式方法 198
14.8.6 正则表达式参数的
局部变量语法
(Java 11新增) 200
14.9 Timer类和TimerTask类 200
14.9.1 Timer类基础 200
14.9.2 TimerTask类基础 201
14.9.3 使用TimerTask子类建立
测试类并实现任务
调度 201
14.10 技术解惑 202
14.10.1 分析对象的生命
周期 202
14.10.2 若未实现Comparable
接口会出现异常 202
14.10.3 使用正则表达式的
好处 202
14.11 课后练习 203
第 15章 异常处理 204
(视频总计52分钟,技术解惑3个)
15.1 异常概述 205
15.1.1 认识异常 205
15.1.2 异常处理类 205
15.2 Java的异常处理方式 206
15.2.1 使用trycatch语句 206
15.2.2 处理多个异常 207
15.2.3 finally语句 208
15.2.4 访问异常信息 209
15.3 抛出异常 210
15.3.1 使用throws抛出异常 210
15.3.2 使用关键字throw
抛出异常 212
15.4 自定义异常 212
15.4.1 Throwable类及其
子类 213
15.4.2 使用Throwable类
自定义异常 214
15.5 技术解惑 215
15.5.1 使用嵌套异常处理是
更合理的方法 215
15.5.2 区别throws关键字和
throw关键字 216
15.5.3 子类Error和
Exception 216
15.6 课后练习 216
第 16章 IO文件处理和流处理 217
(视频总计137分钟,技术解惑3个)
16.1 使用File类 218
16.1.1 File类中的方法 218
16.1.2 创建文件 218
16.1.3 删除文件 219
16.1.4 创建文件夹 219
16.2 RandomAccessFile类 220
16.2.1 RandomAccessFile类的
常用方法 220
16.2.2 使用RandomAccessFile
类 220
16.3 字节流与字符流 221
16.3.1 字节流类和字符流类 221
16.3.2 使用字节输出流
OutputStream 222
16.3.3 使用字节输入流
InputStream 223
16.3.4 字符输出流Writer 224
16.3.5 使用FileWriter追加
文件内容 225
16.3.6 使用字符输入流
Reader 225
16.4 字节转换流 226
16.5 内存操作流 227
16.6 使用管道流 228
16.7 使用打印流 230
16.7.1 打印流基础 230
16.7.2 使用打印流 231
16.8 使用Scanner类 231
16.8.1 Scanner类概述 231
16.8.2 使用Scanner类 232
16.9 实现数据操作流 233
16.9.1 DataOutputStream类 233
16.9.2 DataInputStream类 234
16.10 使用合并流 235
16.11 使用Stream API
(Java 9新特性) 236
16.11.1 Java 8中的流 236
16.11.2 Java 9中的流 238
16.12 使用trywithresources
语句(Java 9改进) 240
16.12.1 trywithresources
语句概述 241
16.12.2 trywithresources的
改进(Java 9新增) 241
16.13 Java IO模块的新特性
(Java 11新增) 244
16.13.1 处理空的文件对象
(Java 11新增) 244
16.13.2 改进的方法readNBytes
(Java 11改进) 245
16.13.3 新的构造方法(Java 11
新增) 246
16.14 技术解惑 246
16.14.1 使用File.separator
表示分隔符 246
16.14.2 字节流和字符流的
区别 246
16.14.3 对象序列化和对象反
序列化操作时的版本
兼容性问题 247
16.15 课后练习 247
第 17章 JavaFX桌面程序开发基础 248
(视频总计92分钟)
17.1 JavaFX概述 249
17.1.1 JavaFX的特色 249
17.1.2 安装efxclipse插件 249
17.1.3 认识第 一个JavaFX
程序 251
17.2 JavaFX界面结构 252
17.2.1 窗体结构剖析 252
17.2.2 属性绑定 253
17.2.3 样式属性和角度属性 254
17.3 使用Color类设置颜色 256
17.3.1 设置颜色的方法 256
17.3.2 使用RGB方式设置
颜色 257
17.3.3 使用Web方式设置
颜色 258
17.4 绘制文字 259
17.4.1 Text包概述 259
17.4.2 绘制指定样式的文本 260
17.5 绘制不同的形状 260
17.5.1 使用Line绘制线条 260
17.5.2 使用Rectangle绘制
矩形 262
17.5.3 使用Circle类绘制圆 263
17.6 课后练习 264
第 18章 JavaFX图像、布局和组件 265
(视频总计86分钟)
18.1 显示图像 266
18.1.1 使用Image类显示
图像 266
18.1.2 使用ImageView显示
图像 267
18.2 界面布局 268
18.2.1 使用Pane的画布
功能 269
18.2.2 使用StackPane实现
特定面板功能 270
18.2.3 使用FlowPane实现
序列放置 270
18.2.4 使用GridPane实现
网格布局 271
18.2.5 使用BorderPane实现
区域布局 272
18.2.6 使用HBox和VBox 273
18.3 使用JavaFX UI组件 274
18.3.1 使用标签组件 275
18.3.2 使用按钮组件 277
18.3.3 使用复选框和单选框
组件 278
18.4 课后练习 279
第 19章 JavaFX事件处理 280
(视频总计62分钟)
19.1 JavaFX事件处理基础 281
19.1.1 Java的事件处理模型 281
19.1.2 JavaFX中的事件 281
19.1.3 事件和事件源 282
19.1.4 一个处理按钮事件的
例子 284
19.2 处理鼠标事件 284
19.2.1 鼠标事件概述 285
19.2.2 使用鼠标事件 285
19.3 处理键盘事件 286
19.3.1 键盘事件概述 286
19.3.2 使用键盘事件 287
19.4 使用事件处理程序 288
19.4.1 注册和移除事件处理
程序 288
19.4.2 使用事件处理程序 289
19.5 使用可触摸设备的事件 290
19.5.1 手势和触摸事件 290
19.5.2 手势事件实战 291
19.6 课后练习 295
第 20章 数据库编程 296
(视频总计58分钟,技术解惑3个)
20.1 使用JDBC API 297
20.1.1 JDBC API介绍 297
20.1.2 JDBC的常用接口
和类 297
20.2 连接Access数据库 299
20.2.1 Access数据库概述 299
20.2.2 连接本地Access
数据库 299
20.3 连接SQL Server数据库 301
20.3.1 下载并安装SQL Sever 2016
驱动 301
20.3.2 测试连接 302
20.3.3 获取SQL Server
数据库中指定的表 304
20.4 连接MySQL数据库 305
20.4.1 下载并配置MySQL
驱动 305
20.4.2 将MySQL驱动
加载到Eclipse中 306
20.4.3 测试连接 306
20.5 技术解惑 307
20.5.1 连接池的功效 307
20.5.2 数据模型、概念模型和
关系数据模型 307
20.5.3 数据库系统的结构 308
20.6 课后练习 308
第 21章 开发互联网程序 309
(视频总计108分钟,技术解惑5个)
21.1 Java语言中的内置网络包 310
21.1.1 InetAddress类介绍 310
21.1.2 URLDecoder类和
URLEncoder类介绍 310
21.1.3 URL类和URLConnection
类介绍 311
21.1.4 使用InetAddress访问
指定的网址 312
21.2 开发TCP程序 312
21.2.1 使用ServerSocket 312
21.2.2 使用Socket 313
21.2.3 开发多线程TCP程序 313
21.3 开发UDP程序 316
21.3.1 使用DatagramSocket 316
21.3.2 使用MulticastSocket 317
21.4 开发代理服务器程序 319
21.4.1 代理服务器概述 319
21.4.2 使用Proxy创建连接 320
21.4.3 使用ProxySelector
选择代理服务器 321
21.5 HTTP2 Client API(Java 11
新增) 322
21.5.1 孵化器模块usergrid
概述 323
21.5.2 HTTP2 Client API
概述 323
21.5.3 处理HTTP请求 324
21.6 技术解惑 325
21.6.1 使用异常处理完善
程序 325
21.6.2 体会烦琐的
DatagramPacket 325
21.6.3 MulticastSocket类的
重要意义 326
21.6.4 继承ProxySelector时
需要做的工作 326
21.6.5 生成jdk.incubator.httpclient
模块的Javadoc 326
21.7 课后练习 326
第 22章 开发多线程Java程序 327
(视频总计135分钟,技术解惑6个)
22.1 线程基础 328
22.1.1 线程与进程 328
22.1.2 Java语言的线程模型 328
22.2 创建线程 328
22.2.1 使用Thread类创建
线程 328
22.2.2 使用Runnable接口
创建线程 331
22.2.3 使用Thread.onSpinWait
方法实现循环等待
(Java 9新增) 332
22.3 线程的生命周期 333
22.3.1 线程的运行与停止 333
22.3.2 线程的挂起和唤醒 333
22.3.3 使用退出标志终止
线程 334
22.3.4 使用interrupt方法
终止线程 335
22.3.5 线程的阻塞 336
22.3.6 线程的死亡 336
22.4 控制线程 337
22.4.1 使用join方法 337
22.4.2 慎重使用volatile
关键字 338
22.4.3 后台、让步和睡眠 340
22.5 进程处理 342
22.5.1 使用ProcessBuilder
类 342
22.5.2 使用Process类 343
22.5.3 使用ProcessHandle类
(Java 9新增) 343
22.6 技术解惑 346
22.6.1 线程和函数的关系 346
22.6.2 在run方法中使用
线程名时产生的问题 346
22.6.3 start和run的区别 346
22.6.4 线程的优先级 346
22.6.5 如何确定发生死锁 347
22.6.6 关键字synchronized和
volatile的区别 347
22.7 课后练习 347
第 23章 开发网络爬虫程序 348
(视频总计50分钟,技术解惑2个)
23.1 网络爬虫的原理 349
23.1.1 基本结构及工作流程 349
23.1.2 抓取策略算法 350
23.2 使用URLConnection开发爬虫
程序 351
23.3 使用jsoup框架 352
23.3.1 jsoup框架介绍 352
23.3.2 使用jsoup获取指定
页面中的指定元素 353
23.3.3 使用jsoup获取指定
格式的URL网址 354
23.4 使用WebCollector框架 354
23.4.1 WebCollector框架
介绍 355
23.4.2 抓取新闻信息 356
23.4.3 抓取图片信息 356
23.5 技术解惑 358
23.5.1 广度优先爬虫算法 358
23.5.2 Java爬虫初识之模拟
登录 360
23.6 课后练习 361
第 24章 大数据挖掘和分析系统
(网络爬虫 JSP MySQL
大数据分析) 362
(视频总计50分钟)
24.1 系统介绍 363
24.2 需求分析 363
24.3 系统模块和实现流程 363
24.4 爬虫抓取模块 364
24.4.1 网页概览 364
24.4.2 破解JS API反爬
机制 366
24.4.3 爬虫抓取Java图书
信息 369
24.4.4 爬虫抓取Python图书
信息 371
24.4.5 爬虫抓取主分类图书
信息类 373
24.4.6 爬虫抓取子分类图书
信息类 377
24.5 大数据可视化分析 379
24.5.1 搭建Java Web
平台 379
24.5.2 大数据分析并可视化
计算机图书数据 382
24.5.3 大数据分析并可视化
近期Java书和Python
书的数据 383
24.5.4 大数据分析并可视化
主分类图书数据 385
24.5.5 大数据分析并可视化
计算机子类图书数据 386
第 25章 微信商城系统(SpringBoot
Vue 微信小程序) 389
(视频总计53分钟)
25.1 微商系统介绍 390
25.2 系统需求分析 390
25.3 系统架构 391
25.3.1 第三方开源库 391
25.3.2 系统架构介绍 391
25.3.3 开发技术栈 392
25.4 实现管理后台模块 392
25.4.1 用户登录验证 392
25.4.2 用户管理 393
25.4.3 订单管理 394
25.4.4 商品管理 397
25.5 实现小商城系统 403
25.5.1 系统主页 403
25.5.2 购物车 404
25.6 本地测试 407
25.6.1 创建数据库 407
25.6.2 运行后台管理系统 407
25.6.3 运行微信小商城
子系统 409
25.7 线上发布和部署 411
25.7.1 微信登录配置 411
25.7.2 微信支付配置 411
25.7.3 配置邮件通知 411
25.7.4 短信通知配置 412
25.7.5 系统部署 412
25.7.6 技术支持 412
|
|