Java编程从入门到精通

978-7-115-65128-0
作者: 扶松柏
译者:
编辑: 张涛
分类: Java

图书目录:

第 1 章 Java 开发基础 1

1.1 初步认识 Java 语言 1

1.1.1 Java 语言介绍 1

1.1.2 Java 语言的特点 1

1.2 搭建 Java 运行环境 2

1.2.1 安装 JDK 2

1.2.2 配置开发环境—Windows 10 4

1.3 编写第 一个 Java 程序 5

1.3.1 第 一个 Java 程序 5

1.3.2 关键字 6

1.3.3 标识符 6

1.3.4 注释 7

1.3.5 方法 main() 8

1.3.6 控制台的输入和输出 8

1.4 编译并运行 Java 程序 8

1.4.1 编译 Java 程序 8

1.4.2 运行 Java 代码 9

1.4.3 Java 11 新特性:新的程序运行方式 9

1.5 技术解惑 9

1.5.1 遵循源文件命名规则 9

1.5.2 忽视系统文件的扩展名 10

1.5.3 大小写问题 10

1.5.4 到底用不用 IDE 工具 10

1.5.5 区分 JRE 和 JDK 10

1.6 常见面试题分析 11

1.7 课后练习 11

第 2 章 选择 Java 开发工具 12

2.1 使用 Eclipse 12

2.1.1 Eclipse 介绍 12

2.1.2 获得并安装 Eclipse 12

2.1.3 使用 Eclipse 新建一个 Java工程 15

2.1.4 编译并运行 Eclipse 工程 16

2.1.5 使用 Eclipse 打开一个 Java工程—打开本书配套资源中的项目 17

2.2 使用 IntelliJ IDEA 18

2.2.1 搭建 IntelliJ IDEA 开发环境 18

2.2.2 使用 IntelliJ IDEA 新建 Java工程 19

2.2.3 使用 IntelliJ IDEA 运行 Java程序 21

2.3 使用手机开发 Java 程序 21

2.4 常见面试题分析 22

2.5 课后练习 22

第 3 章 Java 基础语法 23

3.1 常量和变量 23

3.1.1 常量 23

3.1.2 变量 24

3.2 数据类型 25

3.2.1 Java 数据类型的分类 25

3.2.2 基本数据类型的取值范围 26

3.2.3 字符类型 26

3.2.4 整数类型 27

3.2.5 浮点类型 28

3.2.6 布尔类型 28

3.3 运算符 29

3.3.1 算术运算符 29

3.3.2 关系运算符和布尔逻辑运算符 31

3.3.3 位逻辑运算符 32

3.3.4 条件运算符 33

3.3.5 赋值运算符 33

3.3.6 运算符的优先级 34

3.4 类型转换 35

3.4.1 自动类型转换 35

3.4.2 强制类型转换 36

3.5 技术解惑 36

3.5.1 定义常量时的注意事项 36

3.5.2 char 类型中单引号的意义 36

3.6 常见面试题分析 37

3.7 课后练习 37

第 4 章 条件语句 38

4.1 使用 if 语句 38

4.1.1 if 语句 38

4.1.2 使用 if else 语句 ...................... 39

4.1.3 对多种情况进行判断 39

4.2 使用 switch 选择语句 40

4.2.1 switch 语句的形式 41

4.2.2 无 break 的情况 41

4.2.3 default 可以不在末尾 42

4.3 switch 语句和表达式 43

4.4 技术解惑 44

4.4.1 if else 语句的意义................... 44

4.4.2 switch 语句和 if elseif 语句的选择 44

4.4.3 if 语句和 switch 语句的选择 44

4.5 常见面试题解析 44

4.6 课后练习 45

第 5 章 循环语句和跳转语句 46

5.1 Java 循环语句 46

5.1.1 基本 for 循环 46

5.1.2 for 循环语句的嵌套 47

5.1.3 使用 while 循环语句 48

5.1.4 使用 do while 循环语句.......... 48

5.2 使用跳转语句 49

5.2.1 break 语句的应用 49

5.2.2 使用 return 语句 51

5.2.3 使用 continue 跳转语句 52

5.3 技术解惑 52

5.3.1 使用 for 循环的技巧 52

5.3.2 for 循环和 while 循环、do while循环的区别 52

5.4 常见面试题解析 52

5.5 课后练习 53

第 6 章 数组 54

6.1 使用一维数组 54

6.1.1 声明一维数组 54

6.1.2 创建一维数组 54

6.1.3 初始化一维数组 55

6.2 使用二维数组 56

6.2.1 声明二维数组 56

6.2.2 创建二维数组 56

6.2.3 初始化二维数组 57

6.3 使用三维数组 58

6.3.1 声明三维数组 59

6.3.2 创建并初始化三维数组 59

6.4 操作数组 60

6.4.1 复制数组中的元素 60

6.4.2 比较数组的大小 61

6.4.3 对数组中的元素排序 61

6.4.4 搜索数组中的元素 62

6.4.5 使用 foreach 遍历数组 62

6.5 技术解惑 63

动态初始化数组的规则 63

6.6 常见面试题解析 63

6.7 课后练习 63

第 7 章 面向对象基础 64

7.1 面向对象的基础 64

7.1.1 面向对象的定义 64

7.1.2 Java 的面向对象编程 64

7.1.3 Java 面向对象的几个核心概念 65

7.2 创建类 66

7.2.1 定义类 66

7.2.2 定义属性 67

7.2.3 定义方法 67

7.2.4 定义构造器 68

7.3 使用修饰符 68

7.3.1 使用 public 修饰符 69

7.3.2 使用 private 修饰符 69

7.3.3 使用 protected 修饰符 70

7.4 使用方法 70

7.4.1 传递方法参数 70

7.4.2 长度可变的方法 71

7.4.3 递归方法 72

7.5 使用 this 73

7.6 使用类和对象 74

7.6.1 创建和使用对象 74

7.6.2 使用静态变量和静态方法 74

7.7 使用抽象类和抽象方法 75

7.7.1 抽象类和抽象方法的基础 75

7.7.2 抽象类必须有一个抽象方法 76

7.8 使用包 77

7.8.1 定义软件包 77

7.8.2 在 Eclipse 中定义软件包 78

7.8.3 在程序中插入软件包 78

7.9 技术解惑 79

7.9.1 static 修饰符的作用 79

7.9.2 数组内是同一类型的数据 79

7.10 常见面试题解析 79

7.11 课后练习 80

第 8 章 面向对象编程进阶 81

8.1 类的继承 81

8.1.1 定义继承 81

8.1.2 调用父类的构造方法 82

8.1.3 访问父类的属性和方法 83

8.1.4 多层继承 83

8.2 重写和重载 85

8.2.1 重写 85

8.2.2 重载 86

8.3 使用接口 87

8.3.1 定义接口 87

8.3.2 接口中的常量 88

8.3.3 接口中的方法 88

8.3.4 引用接口 89

8.3.5 接口间的继承 90

8.3.6 接口的私有方法 91

8.4 技术解惑 94

8.4.1 重写方法的注意事项 94

8.4.2 接口和抽象类的区别与联系 94

8.5 常见面试题解析 94

8.6 课后练习 95

第 9 章 构造器、多态和引用类型 96

9.1 使用构造器 96

9.1.1 初始化构造器 96

9.1.2 构造器重载 97

9.1.3 调用父类构造器 97

9.2 使用多态 98

9.2.1 定义多态 98

9.2.2 使用多态 99

9.3 引用类型 100

9.3.1 4 种引用类型 100

9.3.2 引用变量的强制类型转换 102

9.4 组合 102

9.5 初始化块 105

9.5.1 初始化块介绍 105

9.5.2 使用静态初始化块 106

9.6 技术解惑 107

9.7 常见面试题解析 107

9.8 课后练习 108

第 10 章 内部类、匿名类和枚举类 109

10.1 使用内部类 109

10.1.1 内部类概述 109

10.1.2 非静态内部类 110

10.1.3 成员内部类 111

10.1.4 使用局部内部类 111

10.2 使用匿名类 113

10.2.1 定义匿名类 113

10.2.2 定义匿名内部类 114

10.2.3 匿名内部类使用 final形参 114

10.3 使用枚举类 115

10.3.1 模拟枚举类 116

10.3.2 枚举类的方法 117

10.3.3 枚举类型 117

10.4 嵌套访问控制 118

10.4.1 嵌套访问控制基础 118

10.4.2 在 Java 11 程序中访问嵌套

成员 119

10.5 技术解惑 120

10.6 常见面试题解析 120

10.7 课后练习 121

第 11 章 集合 122

11.1 Java 中的集合类 122

11.2 使用 Collection 接口和 Iterator接口 123

11.2.1 Collection 接口概述 123

11.2.2 Iterator 接口概述 124

11.2.3 使用 Collection 接口中的方法操作集合中的元素 124

11.3 使用 Set 接口 125

11.3.1 Set 接口概述 125

11.3.2 使用 HashSet 126

11.3.3 使用 TreeSet 类 127

11.4 使用 List 接口 128

11.4.1 List 接口基础 128

11.4.2 根据索引操作集合内的元素 129

11.5 使用 Map 接口 130

11.5.1 Map 接口中的方法 130

11.5.2 使用 HashMap 和 Hashtable实现类 131

11.5.3 使用 SortedMap 接口和 TreeMap实现类 132

11.6 使用 Queue 接口 133

11.6.1 Queue 接口中的成员 134

11.6.2 LinkedList 类 134

11.7 使用集合工具类 Collections 135

11.7.1 排序操作 135

11.7.2 查找和替换操作 136

11.8 创建不可变的 List 、Set 和 Map 137

11.8.1 Java 9 以前版本的解决方案 137

11.8.2 Java 9 版本的解决方案 138

11.9 使用 var 类型推断 140

11.9.1 var 类型推断基础 140

11.9.2 使用 var 声明局部变量 140

11.10 使用新的默认方法 141

11.11 技术解惑 142

11.11.1 使用 EnumSet 类的注意事项 142

11.11.2 ArrayList 和 Vector 的区别 142

11.11.3 分析 Map 类的性能 142

11.12 常见面试题解析 142

11.13 课后练习 143

第 12 章 使用泛型 144

12.1 泛型基础 144

12.1.1 泛型的优点 144

12.1.2 类型检查 145

12.1.3 使用泛型 146

12.1.4 在类中使用泛型 147

12.2 类型通配符 147

12.2.1 使用泛型通配符 147

12.2.2 泛型限定 148

12.3 泛型方法 150

12.3.1 泛型方法介绍 150

12.3.2 使用泛型方法 150

12.4 使用泛型接口 151

12.5 泛型继承 152

12.5.1 以泛型类为父类 153

12.5.2 将非泛型类作为父类 154

12.6 强制类型转换 154

12.7 技术解惑 155

12.8 常见面试题解析 156

12.9 课后练习 156

第 13 章 Java 常用类库(上) 157

13.1 字符串 157

13.1.1 字符串的初始化 157

13.1.2 String 类 158

13.1.3 Java 11 新特性:新增的String 方法 160

13.2 使用 StringBuffer 类 162

13.2.1 StringBuffer 类基础 162

13.2.2 使用字符追加方法 163

13.3 使用 Runtime 类 164

13.3.1 Runtime 类的常用方法 164

13.3.2 使用 Runtime 类 165

13.4 程序国际化 165

13.4.1 国际化基础 166

13.4.2 Locale 类 166

13.4.3 ResourceBundle 类 166

13.4.4 处理动态文本 167

13.5 使用 System 类 168

13.5.1 System 类的常用方法 169

13.5.2 垃圾对象的回收 169

13.6 技术解惑 170

13.6.1 StringBuffer 和 String 的异同 170

13.6.2 通过 System 类获取本机的全部环境属性 170

13.7 常见面试题解析 171

13.8 课后练习 171

第 14 章 Java 常用类库(下) 172

14.1 使用日期处理类 172

14.1.1 使用 Date 类 172

14.1.2 使用 Calendar 类获取当前的时间 172

14.1.3 使用 DateFormat 类格式化处理时间 173

14.2 使用 Math 类 174

14.3 使用 Random 类生成随机数 175

14.4 使用 NumberFormat 类格式化处理数字 176

14.5 复制对象 178

14.6 使用 Comparable 接口操作数组 179

14.6.1 Comparable 接口介绍 179

14.6.2 使用 Comparator 接口 180

14.7 使用 Observable 类和 Observer接口 182

14.8 使用正则表达式 183

14.8.1 正则表达式基础 183

14.8.2 Java 中的正则表达式类 184

14.8.3 验证一个字符串是否为合法的日期格式 185

14.8.4 String 类和正则表达式 185

14.8.5 Java 9 新增的正则表达式方法 186

14.8.6 正则表达式参数的局部变量语法 187

14.9 使用 Timer 类和 TimerTask 类 188

14.9.1 Timer 类基础 188

14.9.2 TimerTask 类基础 189

14.9.3 使用 TimerTask 子类建立测试类并实现任务调度 189

14.10 技术解惑 190

14.11 常见面试题解析 190

14.12 课后练习 191

第 15 章 异常处理 192

15.1 异常概述 192

15.1.1 认识异常 192

15.1.2 异常处理类 193

15.2 Java 的异常处理方式 193

15.2.1 使用 try catch 语句.............194

15.2.2 处理多个异常 194

15.2.3 finally 语句 195

15.2.4 访问异常信息 196

15.3 抛出异常 197

15.3.1 使用 throws 抛出异常 197

15.3.2 使用关键字 throw 抛出异常 199

15.4 自定义异常 200

15.4.1 Throwable 类及其子类 200

15.4.2 使用 Throwable 类自定义异常 201

15.5 技术解惑 202

15.5.1 区别 throws 关键字和 throw关键字 202

15.5.2 区别子类 Error 和Exception 203

15.6 常见面试题解析 203

15.7 课后练习 203

第 16 章 I/O 文件处理和流处理 204

16.1 使用 File 类 204

16.1.1 File 类中的方法 204

16.1.2 创建文件 205

16.1.3 删除文件 205

16.1.4 创建文件夹 205

16.2 使用 RandomAccessFile 类 206

16.2.1 RandomAccessFile 类的常用方法 206

16.2.2 使用 RandomAccessFile 类 207

16.3 使用字节流与字符流 208

16.3.1 字节流类和字符流类 208

16.3.2 使用字节输出流OutputStream 208

16.3.3 使用字节输入流InputStream 209

16.3.4 字符输出流 Writer 210

16.3.5 使用 FileWriter 追加文件内容 211

16.3.6 使用字符输入流 Reader 212

16.4 使用字节转换流 213

16.5 使用内存操作流 214

16.6 使用管道流 215

16.7 使用打印流 216

16.7.1 打印流基础 216

16.7.2 使用打印流 217

16.8 使用 Scanner 类 217

16.8.1 Scanner 类概述 218

16.8.2 使用 Scanner 类 218

16.9 实现数据操作流 219

16.9.1 DataOutputStream 类 219

16.9.2 DataInputStream 类 220

16.10 使用合并流 221

16.11 使用 Stream API 222

16.11.1 Java 8 中的流 222

16.11.2 Java 9 中的流 224

16.12 使用 try with…resources 语句 ....... 226

16.12.1 try with…resources 语句概述 226

16.12.2 try with…resources 的改进 227

16.13 Java I/O 模块的新特性 230

16.13.1 处理空的文件对象 230

16.13.2 改进的方法readNBytes() 231

16.13.3 新的构造方法 231

16.14 技术解惑 232

16.15 常见面试题分析 232

16.16 课后练习 233

第 17 章 GUI 编程 234

17.1 GUI 开发基础 234

17.1.1 GUI 的发展历程 234

17.1.2 初识 Swing 234

17.1.3 Swing 包 235

17.1.4 Swing 中的组件 236

17.2 窗口与面板 237

17.2.1 JFrame 窗口 237

17.2.2 JPanel 面板 238

17.3 常用布局管理器 239

17.3.1 边框布局管理器 239

17.3.2 流式布局管理器 241

17.3.3 卡片布局管理器 242

17.3.4 网格布局管理器 243

17.4 基本组件 244

17.4.1 按钮组件 244

17.4.2 标签组件 245

17.4.3 单行文本框组件 246

17.4.4 复选框和单选按钮组件 247

17.4.5 边框组件 248

17.4.6 JToolBar 工具条组件 250

17.4.7 选择对话框组件 JColorChooser和 JFileChooser 251

17.4.8 下拉列表组件 252

17.5 进度条组件 253

17.5.1 使用 JProgressBar 创建进度条 254

17.5.2 使用 ProgressMonitor 创建进度对话框 255

17.6 技术解惑 256

17.6.1 事件处理的模型 256

17.6.2 实现树结构 257

17.7 常见面试题解析 257

17.8 课后练习 257

第 18 章 数据库编程 258

18.1 使用 JDBC API 258

18.1.1 JDBC API 介绍 258

18.1.2 JDBC 的常用接口和类 258

18.2 连接 Access 数据库 260

18.2.1 Access 数据库概述 260

18.2.2 连接本地 Access 数据库 260

18.3 连接 SQL Server 数据库 262

18.3.1 下载并安装 SQL Sever 2016驱动 262

18.3.2 测试连接 263

18.3.3 获取 SQL Server 数据库中指定的表 264

18.4 连接 MySQL 数据库 265

18.4.1 下载并配置 MySQL 驱动 266

18.4.2 将 MySQL 驱动加载到Eclipse 中 266

18.4.3 测试连接 267

18.5 技术解惑 267

18.5.1 连接池的功效 267

18.5.2 数据模型、概念模型和关系数据模型的关系 268

18.5.3 数据库系统的结构 268

18.6 常见面试题解析 269

18.7 课后练习 269

第 19 章 开发互联网程序 270

19.1 Java 语言中的内置网络包 270

19.1.1 InetAddress 类概述 270

19.1.2 URLDecoder 类和 URLEncoder类概述 271

19.1.3 URL 类和 URLConnection 类概述 271

19.1.4 使用 InetAddress 访问指定的网址 272

19.2 开发 TCP 程序 272

19.2.1 使用 ServerSocket 273

19.2.2 使用 Socket 273

19.2.3 开发多线程 TCP 程序 274

19.3 开发 UDP 程序 276

19.3.1 使用 DatagramSocket 276

19.3.2 使用 MulticastSocket 278

19.4 开发代理服务器程序 280

19.4.1 代理服务器概述 280

19.4.2 使用 Proxy 创建连接 280

19.4.3 使用 ProxySelector 选择代理服务器 281

19.5 HTTP/2 Client API 283

19.5.1 孵化器模块 usergrid 概述 283

19.5.2 HTTP/2 Client API 概述 283

19.5.3 处理 HTTP 请求 284

19.6 技术解惑 285

19.6.1 使用异常处理完善程序 285

19.6.2 体会烦琐的DatagramPacket 286

19.6.3 MulticastSocket 类的重要意义 286

19.6.4 继承 ProxySelector 时需要做的工作 286

19.6.5 生成 jdk.incubator.httpclient模块的 Javadoc 287

19.7 常见面试题解析 287

19.8 课后练习 288

第 20 章 开发多线程 Java 程序 289

20.1 线程基础 289

20.1.1 线程与进程 289

20.1.2 Java 语言的线程模型 289

20.2 创建线程 290

20.2.1 使用 Thread 类创建线程 290

20.2.2 使用 Runnable 接口创建线程 292

20.2.3 使用 Thread.onSpinWait()方法实现循环等待 293

20.3 线程的生命周期 294

20.3.1 线程的运行与停止 294

20.3.2 线程的挂起和唤醒 294

20.3.3 使用退出标志终止线程 295

20.3.4 使用 interrupt()方法终止线程 296

20.3.5 线程的阻塞 296

20.3.6 线程的死亡 297

20.4 控制线程 298

20.4.1 使用 join()方法 298

20.4.2 慎重使用 volatile 关键字 299

20.4.3 后台、让步和睡眠 301

20.5 进程处理 302

20.5.1 使用 ProcessBuilder 类 302

20.5.2 使用 Process 类 303

20.5.3 使用 ProcessHandle 类 304

20.6 技术解惑 306

20.6.1 线程和函数的关系 306

20.6.2 在 run()方法中使用线程名时产生的问题 306

20.6.3 start()和 run()的区别 306

20.6.4 线程的优先级 307

20.6.5 如何确定发生死锁 307

20.6.6 关键字 synchronized 和volatile 的区别 307

20.7 常见面试题解析 307

20.8 课后练习 308

第 21 章 开发网络爬虫程序 309

21.1 网络爬虫的原理 309

21.1.1 基本结构及工作流程 309

21.1.2 抓取策略算法 310

21.2 使用 URLConnection 开发爬虫程序 311

21.3 使用 jsoup 框架 312

21.3.1 jsoup 框架介绍 312

21.3.2 使用 jsoup 获取指定页面中的指定元素 313

21.3.3 使用jsoup 获取指定格式的URL网址 314

21.4 使用 WebCollector 框架 315

21.4.1 WebCollector 框架概述 315

21.4.2 抓取新闻信息 315

21.4.3 抓取图片信息 316

21.5 技术解惑 317

21.5.1 广度优先爬虫算法 317

21.5.2 Java 爬虫初识之模拟登录 320

21.6 常见面试题解析 320

21.7 课后练习 321

22.1 系统介绍 322

22.2 需求分析 322

22.3 系统模块和实现流程 323

22.4 爬虫抓取模块 323

22.4.1 网页概览 323

22.4.2 破解 JS API 反爬机制 325

22.4.3 爬虫抓取 Java 图书信息 328

22.4.4 爬虫抓取 Python 图书信息 330

22.4.5 爬虫抓取主分类图书信息 332

22.4.6 爬虫抓取子分类图书信息 335

22.5 大数据可视化分析 337

22.5.1 搭建 Java Web 平台 337

22.5.2 大数据分析并可视化计算机图书数据 339

22.5.3 大数据分析并可视化近期 Java图书和 Python 图书的数据 341

22.5.4 大数据分析并可视化主分类图书数据 342

22.5.5 大数据分析并可视化计算机子类图书数据 343

第 23 章 人工智能和 AI 自动化编程 346

23.1 人工智能介绍 346

23.1.1 人工智能的发展方向和技术 346

23.1.2 人工智能的作用 347

23.2 人工智能与自动化编程 347

23.2.1 自动化编程介绍 347

23.2.2 AIGC(人工智能生成内容)介绍 348

23.2.3 AIGC 和自动化编程的关系 349

23.2.4 常用的 AIGC 自动化编程工具 349

23.3 ChatGPT 与自动化编程 350

23.3.1 ChatGPT 的主要特点 350

23.3.2 ChatGPT 在编程方面的功能 350

23.4 Kimi 与自动化编程 351

23.4.1 Kimi 的主要特点 351

23.4.2 Kimi 在编程方面的功能 351

第 24 章 AIGC 自动化编程实战 352

24.1 AI 自动化编程学习助手 352

24.1.1 基于 ChatGPT 的学习助手 352

24.1.2 基于 Kimi 的学习助手 353

24.2 用 AIGC 工具生成代码摘要和代码解释 354

24.2.1 基于 ChatGPT 生成代码摘要和解释 354

24.2.2 基于 Kimi 生成代码摘要和解释 354

24.3 AIGC 工具用于代码生成和注释添加 355

24.3.1 基于 ChatGPT 的代码生成和注释添加 355

24.3.2 基于 Kimi 的代码生成和注释添加 356

24.4 AIGC 工具用于代码补全 357

24.4.1 基于 ChatGPT 的代码补全 358

24.4.2 基于 Kimi 的代码补全 358

24.5 用 AIGC 进行代码重构和优化 359

24.5.1 基于 ChatGPT 的代码重构和优化 360

24.5.2 基于 Kimi 的代码重构和优化 361

24.6 用 AIGC 进行代码纠错 362

24.6.1 基于 ChatGPT 的代码纠错 362

24.6.2 基于 Kimi 的代码纠错 363

24.7 用 AIGC 辅助学习技术文档 363

25.1 基于 ChatGPT 实现的游戏背景介绍 366

25.2 基于 Kimi 的需求分析 366

25.3 用大模型实现一个简易版的切水果游戏 368

25.4 用大模型划分游戏区域 370

25.5 使用 Kimi 大模型美化游戏界面 372

25.5.1 用大模型帮助美观布局和样式 372

25.5.2 用大模型增加游戏背景图 374

25.5.3 用大模型增加 Game Over特效 377

25.5.4 用大模型增加背景音乐 380

25.6 用大模型对代码进行讲解 384

25.6.1 用大模型对游戏的功能和技术栈进行总结 384

25.6.2 用大模型对代码进行剖析 385

详情

本书全面讲解Java语言的编程知识,内容覆盖从基础知识到高级应用,从Java传统编程到AI(Artificial Intelligence)自动化编程,从单个技术实例再到综合实战的知识。全书分25章,主要内容如下:第1章和第2章为Java的入门基础部分,涵盖了Java开发环境的搭建和开发工具的选择;第3章至第10章为Java的核心语法部分,分别讲解了Java的基础语法、条件语句、循环语句和跳转语句、数组、面向对象的基本概念、面向对象的高级特性、构造器,以及内部类、匿名类和枚举类等;第11章至第16章为Java开发进阶提高部分,系统地介绍了集合、泛型、Java常用类库的深入应用、异常处理机制,以及I/O文件处理和流处理技术;第17章至第21章为Java典型应用部分,涵盖了GUI编程、数据库编程、互联网程序开发、多线程开发,以及网络爬虫程序开发等实用技术;第22章为综合实战部分,通过一个大数据挖掘和分析系统的开发案例,讲解Java语言的综合应用技术,包括网络爬虫技术、MySQL以及大数据分析等;特别值得一提的是,第23章至第25章介绍了人工智能与AI自动化编程的前沿知识,探讨了人工智能的编程技术及其在编程中的应用,详细介绍了ChatGPT和Kimi在编程辅助、代码摘要、代码解释、代码生成、注释添加、补全、重构、优化及纠错等方面的强大功能,并通过实现一个简易版的切水果游戏,展示了大模型在项目开发中的实际应用。 本书内容循序渐进,并将传统编程与AI自动化编程相结合,不仅帮助读者扎实地掌握Java编程技术,还能让读者紧跟技术潮流,了解并应用新的AI编程技术。本书不仅适合Java语言的初学者学习,也适合有一定Java语言基础的读者阅读,还可以作为高等院校相关专业的教学用书和培训学校的教材。

图书摘要

相关图书

Java核心技术速学版(第3版)
Java核心技术速学版(第3版)
冲刺高薪Offer——Java通用架构方案及面试指南
冲刺高薪Offer——Java通用架构方案及面试指南
Effective Java中文版(原书第3版)(5天免费训练营详情页扫码报名)
Effective Java中文版(原书第3版)(5天免费训练营详情页扫码报名)
冲刺高薪Offer——Java并发编程进阶及面试指南
冲刺高薪Offer——Java并发编程进阶及面试指南
Java研发自测入门与进阶
Java研发自测入门与进阶
Java开发坑点解析:从根因分析到最佳实践
Java开发坑点解析:从根因分析到最佳实践

相关文章

相关课程