图书盲袋,以书为“药”
欢迎光临中图网 请 | 注册
> >
剑指Java(核心原理与应用实践)/程序员硬核技术丛书

剑指Java(核心原理与应用实践)/程序员硬核技术丛书

出版社:电子工业出版社出版时间:2022-07-01
开本: 16开 页数: 631
中 图 价:¥86.4(4.8折) 定价  ¥180.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口
有划线标记、光盘等附件不全详细品相说明>>
本类五星书更多>

剑指Java(核心原理与应用实践)/程序员硬核技术丛书 版权信息

剑指Java(核心原理与应用实践)/程序员硬核技术丛书 本书特色

内容全面,讲解深入,涵盖数据结构、设计模式、JVM内存管理等深度技术。 案例式讲解,代码量高达3万行以上,全面提升学习者的代码功底! 附赠147小时以上配套视频,200道以上练习题与企业面试真题讲解。 基于企业主流的Java 8版本,同时融合了Java 9~Java 17各版本新特性。

剑指Java(核心原理与应用实践)/程序员硬核技术丛书 内容简介

本书分为四大部分:~6章,初步认识Java的基础语法及主流编程工具的使用;第7~11章,详解Java面向对象编程语言的语法、核心编程思想、基础API等;第12~17章,介绍使用Java进行不错应用开发所需的API和基础原理;第18、19章,介绍了Java8~Java17版本的新特性。本书核心内容基于目前企业应用*主流的Java8进行讲解,读者可以直接进阶到*近的长期支持版本Java17。本书遵循深入浅出的原则编写,既有生动活泼的生活化案例讲解,又有干货满满的源码级分析,可以让读者轻松领会Java技术精髓,快速掌握Java开发技能。本书为每一个知识点的讲解都配备了案例,代码量庞大,如果读者跟随本书案例练习会大大提升自身的代码编写能力。本书配套名师视频教程,读者在学习过程中可结合视频学习,让你的Java进阶之路事半功倍,为后续的技术提升打下坚实的基础。 本书适合初学Java编程语言的自学者、编程爱好者学习,还适合各类院校计算机相关专业的师生作为教材或教辅资料使用,是Java编程语言入门的推荐图书。

剑指Java(核心原理与应用实践)/程序员硬核技术丛书 目录

第1章 Java语言概述 1
1.1 Java语言的发展简史 1
1.2 Java语言的发展前景 3
1.3 Java语言的技术体系平台 4
1.4 Java语言的特点 4
1.5 Java语言的核心机制之JVM 6
1.6 Java语言的开发环境和运行环境 7
1.7 本章小结 8
第2章 **个Java程序:HelloWorld 9
2.1 开发的前期准备 9
2.1.1 JDK的下载 9
2.1.2 JDK的安装 10
2.1.3 JDK的目录介绍 12
2.1.4 配置环境变量 12
2.2 **个Java程序 17
2.2.1 Java程序开发步骤 17
2.2.2 **个Java程序的剖析 19
2.2.3 几个初学者易犯的错误 19
2.3 Java注释 23
2.3.1 单行注释 23
2.3.2 多行注释 23
2.3.3 文档注释 24
2.4 文本编辑器的介绍 25
2.4.1 下载与安装 25
2.4.2 语言环境设置 25
2.4.3 开发Java程序 26
2.4.4 字符编码设置 27
2.4.5 默认开发语言设置 29
2.5 案例:打印个人信息 30
2.6 本章小结 30
第3章 基础语法 31
3.1 关键字和保留字 31
3.1.1 关键字 32
3.1.2 保留字 32
3.1.3 特殊值 32
3.2 标识符 33
3.2.1 标识符的命名规则 33
3.2.2 标识符的命名规范 33
3.2.3 案例:标识符辨析 33
3.3 变量 34
3.3.1 变量的声明与使用 34
3.3.2 变量的注意事项 36
3.4 数据类型 37
3.4.1 计算机数据存储方式 38
3.4.2 整型 39
3.4.3 浮点型 40
3.4.4 字符型 41
3.4.5 布尔型 43
3.4.6 案例:用变量保存个人信息 43
3.5 数据类型的转换 44
3.5.1 自动类型转换 44
3.5.2 强制类型转换 45
3.5.3 案例:基础练习 46
3.6 运算符和标点符号 48
3.6.1 算术运算符 48
3.6.2 赋值运算符 53
3.6.3 比较运算符 54
3.6.4 逻辑运算符 55
3.6.5 位运算符 56
3.6.6 条件运算符 61
3.6.7 运算符的优先级 61
3.6.8 标点符号 62
3.7 本章案例 62
3.7.1 案例:实现算术运算 62
3.7.2 案例:求一个三位数字各个
位数上的和 63
3.7.3 案例:交换两个变量的值 63
3.7.4 案例:判断某个年份是否是
闰年 64
3.7.5 案例:将小写字母转为对应
的大写字母 64
3.8 本章小结 65
第4章 流程控制语句结构 66
4.1 顺序结构 66
4.1.1 顺序结构的特点 66
4.1.2 输出语句 67
4.1.3 输入语句 67
4.1.4 案例:从键盘中输入个人
信息 69
4.2 分支结构之if…else 70
4.2.1 单分支条件判断if 70
4.2.2 案例:2月份的总天数 71
4.2.3 双分支条件判断if…else 71
4.2.4 案例:平年、闰年 72
4.2.5 多分支条件判断if…else if 72
4.2.6 案例:征婚 74
4.2.7 案例:解方程 75
4.3 分支结构之switch-case 76
4.3.1 分支结构switch-case 76
4.3.2 分支结构与条件判断的区别 79
4.3.3 案例:判断这一天是当年的
第几天 80
4.4 循环结构 81
4.4.1 while语句 82
4.4.2 案例:趣味折纸 83
4.4.3 do…while语句 83
4.4.4 案例:猜数字 84
4.4.5 for语句 85
4.4.6 案例:水仙花数 86
4.4.7 三种循环语句的对比 87
4.4.8 嵌套循环 87
4.4.9 案例:九九乘法表 88
4.4.10 案例:完数 89
4.5 跳转语句 89
4.5.1 break语句 90
4.5.2 continue语句 91
4.5.3 return语句 92
4.5.4 案例:素数 92
4.6 综合案例 93
4.7 本章小结 95
第5章 数组 96
5.1 数组概述 96
5.2 一维数组 99
5.2.1 一维数组的声明 99
5.2.2 一维数组的初始化 99
5.2.3 数组元素默认值 101
5.2.4 一维数组的遍历 102
5.2.5 一维数组内存分析 103
5.2.6 案例:遍历英文字母大小写 103
5.2.7 案例:打鱼还是晒网 104
5.3 数组的算法 105
5.3.1 元素特征值统计 105
5.3.2 *值查找 106
5.3.3 顺序查找 106
5.3.4 二分查找 108
5.3.5 冒泡排序 110
5.3.6 快速排序 111
5.3.7 数组的复制 114
5.3.8 元素的反转 116
5.4 动态数组的实现 118
5.4.1 数组元素的增加 118
5.4.2 数组元素的删除 120
5.5 多维数组 122
5.5.1 多维数组的声明 123
5.5.2 多维数组的初始化 123
5.5.3 案例:杨辉三角 125
5.5.4 案例:矩阵转置 126
5.6 本章小结 127
第6章 开发工具IntelliJ IDEA 128
6.1 IntelliJ IDEA概述 128
6.2 下载与安装 129
6.2.1 下载 129
6.2.2 安装 130
6.3 初始化设置 133
6.4 快速创建并运行Java工程 134
6.5 详细设置 137
6.5.1 字体大小设置 137
6.5.2 字符编码设置 138
6.5.3 大小写不敏感设置 138
6.5.4 自动导包 139
6.5.5 启动退出设置 140
6.5.6 自动更新 141
6.6 快速开发 141
6.6.1 代码模板 141
6.6.2 快捷键 142
6.7 多模块的IDEA工程 144
6.8 本章小结 148
第7章 面向对象编程基础 149
7.1 面向对象与面向过程 149
7.2 类与对象 150
7.2.1 类与对象的关系 150
7.2.2 类的声明 150
7.2.3 对象的创建 152
7.3 类的成员之成员变量 153
7.3.1 成员变量的声明 153
7.3.2 成员变量的访问 154
7.3.3 成员变量默认值 155
7.3.4 对象的内存分析 156
7.3.5 成员变量与局部变量的区别 158
7.3.6 案例:商品类与对象 158
7.3.7 案例:银行账户类与对象 159
7.4 类的成员之方法 160
7.4.1 方法的声明 160
7.4.2 方法的调用 162
7.4.3 方法的传参机制 163
7.4.4 案例:圆类方法设计与调用 167
7.4.5 案例:数组工具类方法设计
与调用 168
7.5 方法的重载 171
7.5.1 重载方法的声明和调用 171
7.5.2 案例:求三角形面积 173
7.6 特殊参数 174
7.6.1 命令行参数 174
7.6.2 可变参数 176
7.6.3 案例:n个字符串拼接 177
7.7 方法的递归调用 178
7.7.1 递归调用 178
7.7.2 案例:猴子吃桃 179
7.7.3 案例:走台阶 180
7.8 对象数组的使用 181
7.8.1 对象数组 181
7.8.2 对象数组的内存分析 182
7.8.3 案例:员工信息管理 183
7.9 本章小结 184
第8章 面向对象编程进阶 185
8.1 类的成员之构造器 185
8.1.1 构造器的声明 185
8.1.2 构造器的使用 186
8.1.3 案例:矩形类构造器的设计 187
8.2 面向对象的基本特征之封装性 188
8.2.1 封装的体现 188
8.2.2 访问权限修饰符 189
8.2.3 案例:矩形类的封装 191
8.3 this关键字 192
8.3.1 this关键字的使用场景 193
8.3.2 案例:矩形类代码的改进 195
8.3.3 案例:银行账户类的改进 196
8.3.4 什么是JavaBean 198
8.4 包的使用 199
8.4.1 包的声明 199
8.4.2 使用其他包的类 201
8.4.3 常用包介绍 202
8.4.4 案例:员工信息管理 203
8.5 面向对象的基本特征之继承性 205
8.5.1 为什么需要继承 206
8.5.2 如何实现类的继承 207
8.5.3 类继承性的特点 207
8.5.4 方法的重写 213
8.5.5 super关键字 214
8.5.6 案例:员工和学生信息管理 216
8.6 面向对象基本特征之多态性 218
8.6.1 对象的多态性表现 218
8.6.2 多态性的应用 220
8.6.3 向上转型与向下转型 222
8.6.4 instanceof关键字 223
8.6.5 案例:图形对象管理 224
8.6.6 企业面试题 228
8.7 类的成员之代码块 228
8.7.1 代码块的语法 229
8.7.2 类的初始化 229
8.7.3 案例:类初始化 230
8.7.4 对象的初始化 232
8.7.5 案例:对象初始化 234
8.7.6 企业面试题 236
8.8 本章小结 237
第9章 面向对象高级编程 238
9.1 final关键字 238
9.2 native关键字 240
9.3 abstract关键字 241
9.3.1 抽象方法 241
9.3.2 抽象类 241
9.3.3 案例:模板设计模式 244
9.3.4 案例:员工工资系统 246
9.4 接口 249
9.4.1 接口的好处 249
9.4.2 接口的声明 250
9.4.3 接口的扩展与实现 251
9.4.4 Java 8对接口的改进 255
9.4.5 案例:排序接口Sortable 258
9.5 内部类 261
9.5.1 成员内部类 261
9.5.2 案例:汽车与发动机 264
9.5.3 局部内部类 265
9.5.4 匿名内部类 266
9.5.5 案例:排序接口Comparator 268
9.6 枚举 270
9.6.1 使用class定义枚举类 270
9.6.2 使用enum定义枚举类 271
9.6.3 案例:星期枚举类 273
9.7 注解 274
9.7.1 注解的使用 274
9.7.2 元注解 276
9.7.3 自定义注解 277
9.7.4 注解的新特性 278
9.8 案例:不可扩容与可扩容数组容器 280
9.9 本章小结 283
第10章 异常和异常处理 284
10.1 异常体系结构 284
10.1.1 什么是异常 284
10.1.2 异常的分类 284
10.1.3 常见的异常和错误类型 286
10.1.4 异常信息的查看 291
10.2 异常处理 292
10.2.1 try-catch-finally 292
10.2.2 案例:数组元素的查找 296
10.2.3 关键字:throws 298
10.2.4 案例:倒计时几秒 300
10.2.5 关键字:throw 301
10.2.6 案例:取款和存款异常 303
10.2.7 Java 7对异常处理的改进 305
10.3 异常类型的扩展 306
10.3.1 自定义异常类型 306
10.3.2 案例:登录异常 307
10.4 本章小结 308
第11章 常用类 309
11.1 Object类 309
11.1.1 toString方法 310
11.1.2 equals方法 311
11.1.3 hashCode方法 314
11.1.4 getClass方法 316
11.1.5 clone方法 317
11.1.6 finalize方法 318
11.2 包装类 319
11.2.1 数值类型 319
11.2.2 Character类型 321
11.2.3 Boolean类型 322
11.2.4 装箱与拆箱 322
11.2.5 案例:员工信息管理 323
11.2.6 案例:计算两个整数的和 325
11.2.7 包装类的缓存对象 325
11.3 String类 326
11.3.1 字符串的特点 326
11.3.2 字符串对象的内存分析 328
11.3.3 案例:企业面试题 329
11.3.4 String类的常见方法 331
11.3.5 案例:String算法考查 334
11.4 可变字符序列 336
11.4.1 可变字符序列的常用方法 336
11.4.2 字符串与可变字符序列的
区别 338
11.4.3 案例:字符串指定部分反转 340
11.5 Arrays类 341
11.5.1 toString方法:转换字符串 341
11.5.2 sort方法:自然排序 342
11.5.3 sort方法:定制排序 343
11.5.4 binarySearch方法:查找 345
11.5.5 copyOf方法:数组复制 345
11.5.6 equals方法:判断数组的
元素是否相等 345
11.5.7 案例:左奇右偶 346
11.5.8 案例:动态数组 347
11.6 数学相关类 351
11.6.1 Math类 351
11.6.2 BigInteger类 352
11.6.3 BigDecimal类 353
11.6.4 Random类 353
11.6.5 案例:企业面试题 354
11.7 日期类 355
11.7.1 **代日期类 355
11.7.2 第二代日期类 357
11.7.3 第三代日期类 357
11.8 本章小结 361
第12章 集合 362
12.1 集合概述 362
12.1.1 数组回顾 362
12.1.2 集合框架集 363
12.2 Collection集合 364
12.2.1 Collection集合的方法 364
12.2.2 案例:增加和删除元素 365
12.2.3 foreach循环遍历 367
12.2.4 Iterator迭代器遍历 368
12.2.5 集合元素的删除 370
12.2.6 案例:员工信息管理 371
12.3 List集合 373
12.3.1 List接口的方法 373
12.3.2 案例:元素的增删改查 374
12.3.3 List接口的实现类 375
12.3.4 List集合的遍历 379
12.3.5 案例:企业面试题 380
12.4 Set集合 382
12.4.1 HashSet和LinkedHashSet 382
12.4.2 案例:员工信息管理 382
12.4.3 TreeSet 384
12.4.4 案例:企业面试题 387
12.5 Map集合 388
12.5.1 Map接口的方法 388
12.5.2 Map集合的遍历 389
12.5.3 Map接口的实现类 390
12.5.4 案例:企业面试题 392
12.6 深入源码分析 394
12.6.1 Set的源码分析 394
12.6.2 Iterator的源码分析 395
12.6.3 ArrayList的源码分析 395
12.6.4 LinkedList的源码分析 396
12.6.5 HashMap的源码分析 401
12.6.6 modCount变量 411
12.7 本章小结 411
第13章 泛型 412
13.1 泛型的概念 412
13.1.1 无泛型带来的问题 412
13.1.2 泛型的引入 413
13.2 泛型类或泛型接口 415
13.2.1 泛型类或接口的声明 416
13.2.2 泛型类或接口的使用 417
13.2.3 延续父类或接口的泛型 419
13.2.4 设定泛型的上限 419
13.2.5 案例:矩形对象管理 421
13.2.6 案例:员工信息管理 422
13.2.7 案例:随机验证码 423
13.3 泛型方法 424
13.3.1 泛型方法的声明 424
13.3.2 设定泛型形参的上限 426
13.3.3 案例:数组工具类 427
13.4 类型通配符 429
13.4.1 类型通配符的使用 429
13.4.2 类型通配符的上限 430
13.4.3 类型通配符的下限 431
13.4.4 泛型方法与类型通配符 432
13.5 泛型擦除 435
13.6 泛型嵌套 436
13.7 Collections工具类 438
13.8 案例:企业面试题 439
13.9 本章小结 440
第14章 IO流 441
14.1 File类 441
14.1.1 获取文件或目录信息 441
14.1.2 操作文件 443
14.1.3 操作目录 445
14.1.4 案例:递归列出目录的
下一级 447
14.1.5 案例:递归列出目录下的
所有Java源文件 448
14.1.6 案例:递归删除非空目录 449
14.1.7 案例:获取指定目录的
总大小 450
14.2 IO流的分类和设计 451
14.2.1 IO流类的体系结构 451
14.2.2 常见IO流 452
14.2.3 抽象基类的常用方法 452
14.3 案例演示 454
14.3.1 输出纯文本数据 454
14.3.2 读取纯文本数据 455
14.3.3 按行读取 456
14.3.4 复制文件基本版 456
14.3.5 复制文件提升效率版 457
14.3.6 读写纯文本数据的同时进行
编码和解码 459
14.3.7 操作Java各种数据类型的
数据 461
14.3.8 保存对象 462
14.3.9 按行输出文本内容 465
14.3.10 复制或剪切整个目录 466
14.3.11 IO流使用步骤小结 467
14.4 System类与IO流 468
14.4.1 System类中的IO流 469
14.4.2 Scanner类与IO流 470
14.5 IO流的关闭问题 472
14.5.1 正确关闭IO流 472
14.5.2 新try…catch结构 474
14.6 本章小结 476
第15章 多线程 477
15.1 线程概述 477
15.1.1 进程 478
15.1.2 线程 478
15.2 线程的创建和启动 479
15.2.1 继承Thread类 479
15.2.2 实现Runnable接口 481
15.2.3 二者的区别 482
15.3 线程的生命周期 483
15.4 Thread类的方法 486
15.4.1 获取和设置线程信息 486
15.4.2 线程的控制 488
15.4.3 案例:倒计时 488
15.4.4 案例:线程让步 489
15.4.5 案例:龟兔赛跑 489
15.4.6 案例:守护线程 491
15.4.7 案例:停止线程 492
15.5 线程同步 494
15.5.1 线程安全问题 494
15.5.2 同步代码块 496
15.5.3 同步方法 498
15.5.4 释放锁与否的操作 500
15.5.5 死锁 500
15.6 等待唤醒机制 502
15.6.1 案例:初级快餐店 502
15.6.2 案例:快餐店升级 504
15.6.3 案例:交替打印数字 507
15.7 单例设计模式 508
15.7.1 饿汉式 508
15.7.2 懒汉式 510
15.8 本章小结 512
第16章 网络编程 513
16.1 网络基础知识 513
16.1.1 网络的分类 513
16.1.2 网络协议 514
16.1.3 IP地址 516
16.1.4 端口号 518
16.1.5 URL访问互联网资源 518
16.2 TCP Socket网络编程 521
16.2.1 Socket介绍 522
16.2.2 基于TCP的网络通信程序
结构 523
16.2.3 案例:一个客户端与服务器
端的单次通信 524
16.2.4 案例:多个客户端与服务器
端的多次通信 526
16.2.5 案例:多个客户端上传文件 529
16.2.6 案例:多个客户端群聊 532
16.3 UDP Socket网络编程 538
16.3.1 基于UDP的网络编程 538
16.3.2 案例:用UDP发送消息 539
16.3.3 MulticastSocket多点广播 540
16.3.4 案例:基于MulticastSocket
的群聊 541
16.4 本章小结 543
第17章 反射 544
17.1 类的加载、链接和初始化 544
17.1.1 类的加载 544
17.1.2 类的链接 544
17.1.3 类的初始化 545
17.2 类加载器 548
17.2.1 四种类加载器 549
17.2.2 双亲委托模型 549
17.2.3 自定义类加载器 550
17.2.4 加载资源文件 552
17.3 反射的根源 553
17.3.1 Class类剖析 553
17.3.2 获取类信息 555
17.4 反射的应用 562
17.4.1 动态创建对象 562
17.4.2 动态操作属性 563
17.4.3 动态调用方法 564
17.4.4 动态操作数组 565
17.5 代理设计模式 566
17.5.1 静态代理模式 566
17.5.2 动态代理模式 568
17.6 本章小结 571
第18章 Lambda表达式与Stream API 572
18.1 Lambda表达式 573
18.1.1 Lambda表达式语法 573
18.1.2 案例:实现Comparator接口
574
18.1.3 类型推断 574
18.1.4 Lambda表达式的简化 575
18.2 函数式接口 575
18.2.1 函数式接口的概念 575
18.2.2 案例:消费型接口 577
18.2.3 案例:断定型接口 577
18.2.4 案例:功能型接口 578
18.2.5 案例:员工信息管理 578
18.3 Lambda表达式再简化 580
18.3.1 方法引用 580
18.3.2 构造器引用 582
18.3.3 数组构造引用 583
18.4 强大的Stream API 584
18.4.1 创建Stream对象 585
18.4.2 Stream中间操作 587
18.4.3 终止Stream操作 591
18.5 本章小结 593
第19章 Java 9~Java 17新特性 594
19.1 *新几个Java版本概述 595
19.1.1 新特性简介 595
19.1.2 版本更新说明 597
19.2 语法新特性 597
19.2.1 接口中允许私有方法 599
19.2.2 钻石操作符与匿名内部类
结合 600
19.2.3 try语法改进 600
19.2.4 局部变量类型推断 601
19.2.5 switch语句 603
19.2.6 文本块 607
19.2.7 instanceof支持模式匹配 609
19.2.8 record 610
19.2.9 NullPointerException 612
19.2.10 密封类 613
19.2.11 隐藏类 613
19.3 API改进 614
19.3.1 String类 614
19.3.2 集合相关类 615
19.3.3 Stream API 617
19.3.4 Files及IO流 618
19.3.5 Optional类 619
19.3.6 支持压缩数字格式化 621
19.3.7 支持日期周期格式化 621
19.3.8 @Deprecated注解 622
19.4 其他新特性 622
19.4.1 模块化 622
19.4.2 jshell命令 625
19.4.3 垃圾回收器 627
19.4.4 更简化的编译运行程序 630
19.5 本章小结
展开全部

剑指Java(核心原理与应用实践)/程序员硬核技术丛书 作者简介

尚硅谷教育是一家专业的IT教育培训机构,开设了JavaEE、大数据、HTML5前端等多门学科,在互联网上发布的JavaEE、大数据、HTML5前端、区块链、C语言、Python等技术视频教程广受赞誉。

商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服