Java核心技术 速学版(第3版)
全新正版 极速发货
¥
41.41
4.1折
¥
99.8
全新
库存27件
作者(美)凯·S.霍斯特曼
出版社人民邮电出版社
ISBN9787115626097
出版时间2024-04
装帧平装
开本16开
定价99.8元
货号1203256617
上书时间2024-11-13
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
[美]凯·S.霍斯特曼(Cay S.Horstmann)
《Java 核心技术(原书第 12 版)》两卷本(Core Java, Volumes I and II, Twelfth Edition)的主要作者,他还为专业编程人员和计算机科学专业的学生撰写了十多本书。
他是美国圣何塞州立大学计算机专业的科学荣誉退休教授,也是一名Java Champion。
目录
第1章基本编程结构1
1.1我们的第一个程序1
1.1.1剖析“Hello,World”程序1
1.1.2编译和运行Java程序2
1.1.3方法调用4
1.1.4JShell4
1.2基本类型6
1.2.1有符号整数类型7
1.2.2浮点类型7
1.2.3char类型8
1.2.4boolean类型8
1.3变量8
1.3.1变量声明8
1.3.2标识符9
1.3.3初始化9
1.3.4常量9
1.4算术运算10
1.4.1赋值11
1.4.2基本算术运算符11
1.4.3数学方法12
1.4.4数值的类型转换12
1.4.5关系运算符和逻辑运算符13
1.4.6大数14
1.5字符串14
1.5.1拼接14
1.5.2子串15
1.5.3字符串比较15
1.5.4数值和字符串的相互转换16
1.5.5字符串API16
1.5.6码点和代码单元18
1.5.7文本块19
1.6输入和输出20
1.6.1读取输入20
1.6.2格式化输出21
1.7控制流22
1.7.1分支23
1.7.2switch语句23
1.7.3循环24
1.7.4break和continue25
1.7.5局部变量的作用域26
1.8数组和数组列表27
1.8.1使用数组27
1.8.2数组构造28
1.8.3数组列表28
1.8.4基本类型的封装类29
1.8.5增强for循环30
1.8.6复制数组和数组列表30
1.8.7数组算法31
1.8.8命令行参数31
1.8.9多维数组31
1.9功能分解33
1.9.1声明和调用静态方法33
1.9.2数组参数和返回值33
1.9.3可变参数34
练习34
第2章面向对象编程36
2.1使用对象36
2.1.1访问器方法和修改器方法37
2.1.2对象引用38
2.2实现类39
2.2.1实例变量39
2.2.2方法头39
2.2.3方法体39
2.2.4实例方法调用40
2.2.5this引用40
2.2.6按值调用41
2.3对象构造42
2.3.1实现构造器42
2.3.2重载42
2.3.3从一个构造器调用另一个构造器43
2.3.4默认初始化43
2.3.5实例变量初始化43
2.3.6final实例变量44
2.3.7无参数构造器44
2.4记录44
2.4.1记录的概念45
2.4.2构造器:标准的、自定义的和简洁的46
2.5静态变量和静态方法46
2.5.1静态变量46
2.5.2静态常量47
2.5.3静态初始化块47
2.5.4静态方法47
2.5.5工厂方法48
2.6包49
2.6.1包声明49
2.6.2jar命令49
2.6.3类路径50
2.6.4包访问51
2.6.5导入类51
2.6.6静态导入52
2.7嵌套类52
2.7.1静态嵌套类52
2.7.2内部类53
2.7.3内部类的特殊语法规则54
2.8文档注释55
2.8.1注释插入55
2.8.2类注释56
2.8.3方法注释56
2.8.4变量注释56
2.8.5通用注释57
2.8.6链接57
2.8.7包注释、模块注释和概述注释57
2.8.8注释提取58
练习58
第3章接口和Lambda表达式60
3.1接口60
3.1.1使用接口60
3.1.2声明接口61
3.1.3实现接口61
3.1.4转换为接口类型62
3.1.5强制转换和instanceof运算符63
3.1.6instanceof的“模式匹配”形式63
3.1.7扩展接口64
3.1.8实现多个接口64
3.1.9常量64
3.2静态方法、默认方法和私有方法64
3.2.1静态方法65
3.2.2默认方法65
3.2.3解决默认方法冲突65
3.2.4私有方法66
3.3接口示例66
3.3.1Comparable接口67
3.3.2Comparator接口68
3.3.3Runnable接口68
3.3.4用户界面回调68
3.4Lambda表达式69
3.4.1Lambda表达式的语法69
3.4.2函数式接口70
3.5方法引用和构造器引用71
3.5.1方法引用71
3.5.2构造器引用71
3.6处理Lambda表达式72
3.6.1实现延迟执行72
3.6.2选择函数式接口73
3.6.3实现自己的函数式接口74
3.7Lambda表达式作用域和变量作用域74
3.7.1Lambda表达式作用域75
3.7.2封闭作用域内访问变量75
3.8高阶函数76
3.8.1返回函数的方法76
3.8.2修改函数的方法77
3.8.3Comparator方法77
3.9局部类和匿名类78
3.9.1局部类78
3.9.2匿名类78
练习79
第4章继承与反射81
4.1扩展类81
4.1.1超类和子类81
4.1.2定义和继承子类方法82
4.1.3方法覆盖82
4.1.4子类构造83
4.1.5超类赋值83
4.1.6强制类型转换84
4.1.7匿名子类84
4.1.8带super的方法表达式84
4.2继承的层次结构85
4.2.1final方法和final类85
4.2.2抽象方法和抽象类85
4.2.3受保护的访问86
4.2.4密封类86
4.2.5继承和默认方法88
4.3Object:重量超类88
4.3.1toString方法89
4.3.2equals方法90
4.3.3hashCode方法91
4.3.4克隆对象92
4.4枚举94
4.4.1枚举的方法94
4.4.2构造器、方法和字段94
4.4.3实例的主体95
4.4.4静态成员95
4.4.5switch中的枚举96
4.5运行时类型信息和资源96
4.5.1Class类96
4.5.2加载资源98
4.5.3类加载器98
4.5.4上下文类加载器99
4.5.5服务加载器100
4.6反射101
4.6.1枚举类的成员101
4.6.2检查对象102
4.6.3调用方法102
4.6.4构造对象103
4.6.5JavaBeans103
4.6.6使用数组104
4.6.7代理105
练习106
第5章异常、断言和日志108
5.1异常处理108
5.1.1抛出异常108
5.1.2异常层次结构109
5.1.3声明检查型异常110
5.1.4捕获异常110
5.1.5带资源的try语句111
5.1.6finally子句112
5.1.7重新抛出异常和链接异常113
5.1.8未捕获的异常和栈跟踪114
5.1.9抛出异常的API方法114
5.2断言115
5.2.1使用断言115
5.2.2启用和禁用断言115
5.3日志116
5.3.1是否应使用Java日志框架116
5.3.2日志记录基础116
5.3.3平台日志API117
5.34日志记录配置118
5.3.5日志处理程序118
5.3.6过滤器和格式化器120
练习121
第6章泛型编程123
6.1泛型类123
6.2泛型方法124
6.3类型限定124
6.4类型差异和通配符125
6.4.1子类型通配符125
6.4.2超类型通配符126
6.4.3带类型变量的通配符127
6.4.4无限定通配符127
6.4.5通配符捕获128
6.5Java虚拟机中的泛型128
6.5.1类型擦除128
6.5.2强制类型转换插入129
6.5.3桥接方法129
6.6泛型的130
6.6.1无基本类型参数130
6.6.2运行时所有类型都是原始的130
6.6.3无法实例化类型变量131
6.6.4不能构造参数化类型的数组132
6.6.5类类型变量在静态上下文中无效132
6.6.6擦除后方法不能发生冲突133
6.6.7异常和泛型133
6.7反射和泛型134
6.7.1Class类134
6.7.2虚拟机中的泛型类型信息135
练习136
第7章容器138
7.1容器框架概述138
7.2迭代器140
7.3集合141
7.4映射142
7.5其他容器144
7.5.1属性144
7.5.2位集145
7.5.3枚举集合和枚举映射146
7.5.4栈、队列、双向队列和优先队列146
7.5.5弱哈希映射147
7.6视图147
7.6.1小型容器147
7.6.2范围148
7.6.3不可修改视图148
练习149
第8章流151
8.1从迭代到流操作151
8.2流的创建152
8.3filter、map和flatMap方法153
8.4提取子流和组合流155
8.5其他流转换155
8.6简单约简156
8.7Optional类型156
8.7.1生成替代值156
8.7.2值存在就消费值157
8.7.3流水线化Optional值157
8.7.4不使用Optional值的方式157
8.7.5创建Optional值158
8.7.6用flatMap合成Optional值函数158
8.7.7将Optional转换为流159
8.8收集结果159
8.9收集到映射中160
8.10分组和分区161
8.11下游收集器161
8.12约简操作163
8.13基本类型流164
8.14并行流165
练习166
第9章输入和输出处理168
9.1输入/输出流、读取器和写入器168
9.1.1获取流168
9.1.2字节的读取169
9.1.3字节的写入169
9.1.4字符编码170
9.1.5文本输入171
9.1.6文本输出172
9.1.7二进制数据的读写173
9.1.8随机访问文件173
9.1.9内存映射文件173
9.1.10文件锁定174
9.2路径、文件和目录174
9.2.1路径174
9.2.2创建文件和目录175
9.2.3复制、移动和删除文件176
9.2.4访问目录条目177
9.2.5ZIP文件系统178
9.3HTTP连接179
9.3.1URLConnection类和HttpURLConnection类179
9.3.2HTTP客户端API180
9.4正则表达式181
9.4.1正则表达式语法181
9.4.2检测匹配183
9.4.3查找所有匹配184
9.4.4分组184
9.4.5按分隔符拆分185
9.4.6替换匹配185
9.4.7标志186
9.5序列化186
9.5.1Serializable接口186
9.5.2瞬态实例变量187
9.5.3readObject和writeObject方法188
9.5.4readExternal和writeExternal方法189
9.5.5readResolve和writeReplace方法189
9.5.6版本管理190
9.5.7反序列化和安全性191
练习192
第10章并发编程194
10.1并发任务194
10.1.1运行任务194
10.1.2Future196
10.2异步计算197
10.2.1可完成Future197
10.2.2组合可完成Future198
10.2.3用户界面回调中的长时间运行任务200
10.3线程安全201
10.3.1可见性201
10.3.2竞争条件202
10.3.3安全并发策略203
10.3.4不可变类204
10.4并行算法204
10.4.1并行流204
10.4.2并行数组操作205
10.5线程安全数据结构205
10.5.1并发哈希映射206
10.5.2阻塞队列206
10.5.3其他线程安全数据结构207
10.6原子计数器和累加器208
10.7锁和条件209
10.7.1锁209
10.7.2synchronized关键字210
10.7.3等待条件211
10.8线程212
10.8.1启动线程212
10.8.2线程中断213
10.8.3线程局部变量214
10.8.4其他线程特性214
10.9进程215
10.9.1创建进程215
10.9.2运行进程216
10.9.3进程句柄217
练习217
第11章注解221
11.1使用注解221
11.1.1注解元素221
11.1.2多重注解和重复注解222
11.1.3注解声明222
11.1.4类型使用注解223
11.1.5使接收器显式224
11.2定义注解224
11.3标准注解226
11.3.1编译用注解226
11.3.2元注解227
11.4在运行时处理注解228
11.5源码级注解处理230
11.5.1注解处理器230
11.5.2语言模型APl230
11.5.3使用注解生成源代码231
练习232
第12章日期和时间API234
12.1时间线234
12.2本地日期235
12.3日期调整器237
12.4本地时间238
12.5时区时间238
12.6格式化和解析240
12.7与遗留代码互操作242
练习243
第13章国际化244
13.1区域设置244
13.1.1指定区域设置245
13.1.2默认区域设置246
13.1.3显示名称247
13.2数值格式247
13.3货币248
13.4日期和时间格式化248
13.5排序和规范化249
13.6消息格式化250
13.7资源包251
13.7.1组织资源包252
13.7.2包类253
13.8字符编码253
13.9优选项254
练习255
第14章编译和脚本256
14.1编译器API256
14.1.1调用编译器256
14.1.2启动编译任务256
14.1.3捕获诊断信息257
14.1.4从内存读取源文件257
14.1.5将字节码写入内存257
14.2脚本API258
14.2.1获取脚本引擎258
14.2.2脚本求值259
14.2.3绑定259
14.2.4重定向输入和输出259
14.2.5调用脚本函数和方法260
14.2.6编译脚本260
练习261
第15章Java平台模块系统262
15.1模块的概念262
15.2给模块命名263
15.3模块化“Hello,World!”程序264
15.4对模块的需求265
15.5导出包266
15.6模块和反射式访问267
15.7模块化JAR269
15.8自动模块270
15.9不具名模块271
15.10用于迁移的命令行标志271
15.11传递性需求和静态需求272
15.12限定导出和开放273
15.13服务加载273
15.14操作模块的工具274
练习276
内容摘要
本书是经典Java开发基础书《Java核心技术》的速学版本。本书首先介绍了Java语言的基础知识,包含接口、Lambda表达式、继承、反射、异常处理、断言、日志、泛型编程、容器等关键概念;其次介绍了流、输人和输出处理、并发、注解、日期和时间API、国际化、编译和脚本、Java平台模块系统等高级特性。本书不仅可以让读者深入了解Java编程的基础知识和核心概念,还可以帮助读者掌握Java应用程序开发所需的基本技能。本书涵盖了Java17中更新的内容,提供了许多实用的示例代码,还给出了基于作者实际经验的提示、注意和警告。本书可供希望深入掌握Java应用的初学者使用,也适合打算将Java应用到实际项目中的编程人员使用。
主编推荐
1.经典Java作品《Java核心技术》的速学版本,降低学习门槛,帮助读者更容易学习Java,更快地把相关知识应用到实际工作中;
2.Java入门优选书籍,涵盖Java 8-Java 17的新特性,作者Java大神霍斯特曼;
3.快速切入主题,展示解决编程问题所需的核心知识,既扎实覆盖Java编程的基础知识,更独具匠心地带领读者探索和实践Java的诸多新特性;
4.提供丰富的示例,还给出了大量注释、提示和警告,这些都是作者实际经验的总结,对编程实践大有裨益。
— 没有更多了 —
以下为对购买帮助不大的评价