×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
Java学习手册

Java学习手册

1星价 ¥51.8 (3.5折)
2星价¥50.3 定价¥148.0

温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口有划线标记、光盘等附件不全详细品相说明>>

暂无评论
图文详情
  • ISBN:9787519859374
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:24cm
  • 页数:13,495页
  • 出版时间:2021-11-01
  • 条形码:9787519859374 ; 978-7-5198-5937-4

本书特色

通过富有吸引力、趣味性和实用性的示例,并且始终着眼于构建实际的应用,这本书全面介绍了Java的基础知识,包括其类库、编程技术和惯用方法。 如果你刚接触Java或者刚开始学习编程,这本畅销书会带你学习Java 11及以上版本的语言特性和API。通过富有吸引力、趣味性和实用性的示例,并且始终着眼于构建实际的应用,这本书的作者Marc Loy、Patrick Niemeyer和Daniel Leuck全面介绍了Java的基础知识,包括其类库、编程技术和惯用方法。 除了学习*新Java版本中的核心语言特性,你还会学习一些功能强大的新方法来管理应用中的资源和异常。 “Java虚拟机已经证明是一个高性能、可靠的强大工具,可用于工业规模的跨平台开发。无论你是刚开始探索这个语言,还是已经在使用某种JVM语言,或者只是对新特性感到好奇,这本书都可以满足你,这是对Java语言的一个极好的介绍和指南。在过去的25年里,Java深刻地影响着编程的前进方向,并且还在继续发展,它的演进方式会让它依然举足轻重。通过这本书可以很好地了解为什么会这样。”——James Elliott Singlewire高级软件工作师,《Java Swing(第二版)》合作者

内容简介

?? 使用编译器、解释器和其他工具完成Java开发。 ?? 探索Java内置的线程功能和并发包。 ?? 学习文本处理和强大的正则表达式API。 ?? 编写高级网络应用或基于Web的应用和服务。

目录

目录
前言 .1
第1 章 一种现代语言 9
1.1 进入Java 世界 .10
1.1.1 Java 起源 10
1.1.2 成长 .12
1.2 虚拟机 13
1.3 Java 与其他语言的比较 15
1.4 设计安全 .19
1.4.1 简化、简化、再简化19
1.4.2 类型安全和方法绑定20
1.4.3 增量式开发 .21
1.4.4 动态内存管理 .22
1.4.5 错误处理 23
1.4.6 线程 .23
1.4.7 可伸缩性 24
1.5 实现安全 .24
1.5.1 校验器 26
1.5.2 类加载器 27
1.5.3 安全管理器 .28
1.6 应用和用户级安全 .28
1.7 Java 路线图 29
1.7.1 过去:Java 1.0—Java 11 29
1.7.2 现在:Java 14 32
1.7.3 将来 .33
1.7.4 可用性 34
第2 章 **个应用 .35
2.1 Java 工具和环境 35
2.1.1 安装JDK 36
2.1.2 在Linux 上安装OpenJDK 37
2.1.3 在macOS 上安装OpenJDK 38
2.1.4 在Windows 上安装OpenJDK 39
2.1.5 配置IntelliJ IDEA 并创建一个项目 43
2.1.6 运行项目 46
2.1.7 获得本书示例 .47
2.2 HelloJava .48
2.2.1 类 .51
2.2.2 main() 方法 .52
2.2.3 类和对象 54
2.2.4 变量和类类型 .54
2.2.5 HelloComponent 55
2.2.6 继承 .56
2.2.7 JComponent 类 57
2.2.8 关系和指向 .58
2.2.9 包和导入 59
2.2.10 paintComponent() 方法 61
2.3 HelloJava2: 续集 .62
2.3.1 实例变量 63
2.3.2 构造器 64
2.3.3 事件 .66
2.3.4 repaint() 方法 .69
2.3.5 接口 .69
2.4 既是结束,又是开始 71
第3 章 专业工具 72
3.1 JDK 环境 .72
3.2 JVM 73
3.3 运行Java 应用 .73
系统属性 75
3.4 类路径 76
3.4.1 javap 77
3.4.2 模块 .78
3.5 Java 编译器 78
3.6 尝试Java .80
3.7 JAR 文件 .86
3.7.1 文件压缩 86
3.7.2 jar 工具 87
3.7.3 pack200 工具 90
3.8 再接再厉 .91
第4 章 Java 语言 92
4.1 文本编码 .93
4.2 注释 95
Javadoc 注释 96
4.3 变量和常量 98
4.4 类型 99
4.4.1 基本类型 100
4.4.2 引用类型 105
4.4.3 推导类型 106
4.4.4 传递引用 107
4.4.5 谈谈字符串 108
4.5 语句和表达式 .109
4.5.1 语句 109
4.5.2 表达式 .118
4.6 数组 .124
4.6.1 数组类型 125
4.6.2 数组创建和初始化 126
4.6.3 使用数组 128
4.6.4 匿名数组 130
4.6.5 多维数组 130
4.7 类型、类和数组 132
第5 章 Java 中的对象. 134
5.1 类 .135
5.1.1 声明和实例化类 .136
5.1.2 访问字段和方法 .138
5.1.3 静态成员 143
5.2 方法 .146
5.2.1 局部变量 147
.2.2 遮蔽 147
5.2.3 静态方法 149
5.2.4 初始化局部变量 .151
5.2.5 参数传递和引用 .152
5.2.6 基本类型的包装器 154
5.2.7 方法重载 156
5.3 对象创建 157
5.3.1 构造器 .158
5.3.2 使用重载构造器 .159
5.4 对象析构 161
垃圾回收 161
5.5 包 .162
5.5.1 导入类 .163
5.5.2 自定义包 165
5.5.3 成员可见性和访问 166
5.5.4 用包编译 168
5.6 高级类设计 .169
5.6.1 派生子类和继承 .169
5.6.2 接口 174
5.6.3 内部类 .177
5.6.4 匿名内部类 179
5.7 组织内容和为失败做规划 180
第6 章 错误处理和日志 . 183
6.1 异常 .184
6.1.1 异常和错误类 184
6.1.2 异常处理 186
6.1.3 冒泡 190
6.1.4 栈轨迹 .191
6.1.5 受查和非受查异常 192
6.1.6 抛出异常 193
6.1.7 try 蔓延 196
6.1.8 finally 子句 197
6.1.9 带资源的try 语句 199
6.1.10 性能问题 .200
6.2 断言 .201
6.2.1 启用和禁用断言 .202
6.2.2 使用断言 202
6.3 日志API204
6.3.1 日志API 概述 .204
6.3.2 日志级别 206
6.3.3 一个简单的例子 .207
6.3.4 日志设置属性 208
6.3.5 日志记录器 210
6.3.6 性能 210
6.4 真实世界的异常 211
第7 章 集合和泛型 212
7.1 集合 .212
7.1.1 Collection 接口 213
7.1.2 集合类型 214
7.1.3 Map 接口 216
7.2 类型限制 218
7.2.1 容器 219
7.2.2 容器能固定吗? .220
7.3 引入泛型 221
谈谈类型 224
7.4 “没有勺子” .225
7.4.1 擦除 225
7.4.2 原始类型 227
7.5 参数化类型关系 228
为什么是List 而不是List? 230
7.6 类型强制转换 .231
7.6.1 集合与数组间的转换232
7.6.2 迭代器 .233
7.7 深入分析:sort() 方法 234
7.8 应用:农场的树 235
7.9 结论 .237
第8 章 文本和核心工具 . 238
8.1 String 238
8.1.1 构造字符串 239
8.1.2 转换为字符串 240
8.1.3 比较字符串 241
8.1.4 查找 243
8.1.5 字符串方法小结 .243
8.2 解析字符串 .245
8.2.1 解析基本类型 245
8.2.2 分解文本 246
8.3 正则表达式 .248
8.3.1 正则表达式记法 .249
8.3.2 java.util.regex API .255
8.4 数学工具 260
8.4.1 java.lang.Math 类 261
8.4.2 大数/ 精确数264
8.5 日期和时间 .265
8.5.1 本地日期和时间 .266
8.5.2 比较和处理日期和时间 267
8.5.3 时区 268
8.5.4 解析和格式化日期和时间 .269
8.5.5 解析错误 271
8.5.6 时间戳 .272
8.6 其他有用的工具 273
第9 章 线程 274
9.1 线程介绍 275
9.1.1 Thread 类和Runnable 接口 275
9.1.2 控制线程 279
9.1.3 线程之死 285
9.2 同步 .286
9.2.1 串行化方法访问 .287
9.2.2 从多个线程访问类和实例变量 292
9.3 调度和优先级 .293
9.3.1 线程状态 295
9.3.2 时间片 .295
9.3.3 优先级 .297
9.3.4 交出控制 297
9.4 线程性能 298
9.4.1 同步的开销 298
9.4.2 线程资源消耗 299
9.5 并发工具 300
第10 章 桌面应用 . 302
10.1 按钮、滑动条和文本域 303
10.1.1 组件层次体系 303
10.1.2 模型视图控制器架构 .304
10.1.3 标签和按钮.305
10.1.4 文本组件 .312
10.1.5 其他组件 .321
10.2 容器和布局 325
10.2.1 Frame 和Window 325
10.2.2 JPanel 327
10.2.3 布局管理器.328
10.3 事件 337
10.3.1 鼠标事件 .338
10.3.2 动作事件 .341
10.3.3 更改事件 .344
10.3.4 其他事件 .345
10.4 模式和弹出 346
10.4.1 消息对话框.347
10.4.2 确认对话框.350
10.4.3 输入对话框.351
10.5 线程问题 352
10.5.1 SwingUtilities 和组件更新 .353
10.5.2 计时器 356
10.6 下一步 .358
10.6.1 菜单 359
10.6.2 首选项 361
10.6.3 自定义组件和Java 2D .361
10.6.4 JavaFX361
10.7 用户界面和用户体验 362
第11 章 网络和I/O 363
11.1 流363
11.1.1 基本I/O 365
11.1.2 字符流 368
11.1.3 流包装器 .369
11.1.4 java.io.File 类 373
11.1.5 文件流 379
11.1.6 RandomAccessFile 381
11.2 NIO File API.382
11.2.1 FileSystem 和Path 383
11.2.2 NIO 文件操作 385
11.3 NIO 包 .388
11.3.1 异步I/O 389
11.3.2 性能 389
11.3.3 映射和锁定文件 390
11.3.4 通道 390
11.3.5 缓冲区 391
11.3.6 字符编码器和解码器 .395
11.3.7 FileChannel.397
11.4 网络编程 400
11.5 Socket 402
11.5.1 客户和服务器 403
11.5.2 DateAtHost 客户 407
11.5.3 一个分布式游戏 409
11.6 更多探索 420
第12 章 Web 编程 421
12.1 统一资源定位符 .421
12.2 URL 类 422
12.2.1 流数据 423
12.2.2 作为对象获得内容 .424
12.2.3 管理连接 .426
12.2.4 处理器的实际使用 .426
12.2.5 有用的处理器框架 .427
12.3 与Web 应用会话 427
12.3.1 使用GET 方法 .428
12.3.2 使用POST 方法 429
12.3.3 HttpURLConnection 433
12.3.4 SSL 和安全Web 通信 433
12.4 Java Web 应用 .434
12.4.1 Servlet 生命周期 .435
12.4.2 Servlet 436
12.4.3 HelloClient Servlet .437
12.4.4 Servlet 响应 439
12.4.5 Servlet 参数 440
12.4.6 ShowParameters Servlet442
12.4.7 用户会话管理 444
12.4.8 ShowSession Servlet 445
12.5 Servlet 容器 447
12.5.1 用web.xml 和注解进行配置 .449
12.5.2 URL 模式映射 451
12.5.3 部署HelloClient 452
12.6 庞大的万维网 453
第13 章 扩展Java 454
13.1 Java 版本 454
JCP 和JSR 455
13.2 Lambda 表达式 455
改造你的代码 .456
13.3 扩展Java 核心特性 462
13.4 结束语和前景展望 463
附录A 代码示例和IntelliJ IDEA . 465
A.1 获取主要代码示例 .465
A.2 安装IntelliJ IDEA 467
A.2.1 在Linux 上安装 467
A.2.2 在macOS 上安装 .468
A.2.3 在Windows 上安装 .469
A.3 导入示例 .470
A.4 运行示例 .476
A.5 获取Web 代码示例 478
A.6 处理Servlet 479
附录B 术语表 483

展开全部

作者简介

Marc Loy是一位专注用户体验设计和移动应用的软件开发人员和培训师。 Patrick Niemeyer是网络和分布式应用领域的一位独立顾问和作者。 Daniel Leuckis是Ikayzo公司的CEO,这是以东京和檀香山为基地的一个交互式设计和软件开发公司,其客户包括Sony、Oracle和PIMCO。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航