图书介绍

Java语言导学 原书第5版PDF|Epub|txt|kindle电子书版本网盘下载

Java语言导学 原书第5版
  • (美)扎卡沃,(美)坎南,(美)盖拉多著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111503927
  • 出版时间:2015
  • 标注页数:450页
  • 文件大小:225MB
  • 文件页数:465页
  • 主题词:JAVA语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Java语言导学 原书第5版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 快速入门1

1.1 关于Java技术1

1.1.1 Java程序语言1

1.1.2 Java平台2

1.1.3 Java技术的功能3

1.1.4 Java技术的优势3

1.2 “Hello World!”实例程序4

1.2.1 用NetBeans IDE开发“HelloWorld!”4

1.2.2 在Microsoft Windows中开发“Hello World!”9

1.2.3 在Solaris和Linux中开发“Hello World!”12

1.3 “Hello World!”实例程序剖析14

1.3.1 源码注释15

1.3.2 HelloWorldApp类定义15

1.3.3 main方法16

1.4 常见问题(及其解决方案)16

1.4.1 编译器问题16

1.4.2 运行时问题18

1.5 问题和练习:快速入门19

第2章 面向对象的编程概念20

2.1 对象20

2.2 类22

2.3 继承23

2.4 接口23

2.5 包24

2.6 问题和练习:面向对象的编程概念24

第3章 语言基础26

3.1 变量26

3.1.1 命名27

3.1.2 基本数据类型27

3.1.3 数组30

3.1.4 小结33

3.1.5 问题和练习:变量34

3.2 运算符34

3.2.1 赋值运算符、算术运算符和一元运算符35

3.2.2 等式运算符、关系运算符和条件运算符37

3.2.3 位运算符和移位运算符39

3.2.4 小结39

3.2.5 问题和练习:运算符40

3.3 表达式、语句和块41

3.3.1 表达式41

3.3.2 语句42

3.3.3 块42

3.3.4 问题和练习:表达式、语句和块43

3.4 控制流语句43

3.4.1 if-then语句和if-then-else语句43

3.4.2 switch语句44

3.4.3 while语句和do-while语句48

3.4.4 for语句49

3.4.5 分支语句50

3.4.6 小结52

3.4.7 问题和练习:控制流语句53

第4章 类和对象54

4.1 类54

4.1.1 声明类55

4.1.2 声明成员变量56

4.1.3 定义方法57

4.1.4 构建构造器58

4.1.5 将消息传给方法或构造器59

4.2 对象62

4.2.1 创建对象63

4.2.2 使用对象65

4.3 类的更多细节67

4.3.1 从方法返回值67

4.3.2 使用this关键字68

4.3.3 控制对类成员的访问69

4.3.4 实例和类成员70

4.3.5 初始化字段73

4.3.6 小结74

4.3.7 问题和练习:类75

4.3.8 问题和练习:对象76

4.4 嵌套类76

4.4.1 为什么使用嵌套类77

4.4.2 静态嵌套类77

4.4.3 内部类77

4.4.4 内部类实例78

4.4.5 小结79

4.4.6 问题和练习:嵌套类79

4.5 枚举类型80

4.5.1 问题和练习:枚举类型82

4.6 注解82

4.6.1 文档82

4.6.2 编译器使用的注解83

4.6.3 注解的处理84

4.6.4 问题和练习:注解85

第5章 接口与继承86

5.1 接口86

5.1.1 Java语言的接口86

5.1.2 将接口用作API87

5.1.3 接口和多重继承87

5.1.4 定义接口87

5.1.5 实现接口88

5.1.6 将接口用作类型89

5.1.7 重写接口90

5.1.8 小结90

5.1.9 问题和练习:接口91

5.2 继承91

5.2.1 Java平台中类的层次结构91

5.2.2 继承实例92

5.2.3 子类能做什么93

5.2.4 超类的私有成员93

5.2.5 转换对象93

5.2.6 覆盖和屏蔽方法94

5.2.7 多态性95

5.2.8 屏蔽字段97

5.2.9 使用super关键字97

5.2.10 将对象用作超类98

5.2.11 编写final类和方法101

5.2.12 抽象方法和类101

5.2.13 小结103

5.2.14 问题和练习:继承103

第6章 泛型105

6.1 为什么用泛型105

6.2 泛型类型106

6.2.1 一个简单的Box类106

6.2.2 Box类的泛型版本106

6.2.3 类型参数命名约定107

6.2.4 泛型类型的调用和实例化107

6.2.5 钻石运算符107

6.2.6 多个类型参数108

6.2.7 参数化类型108

6.2.8 原生类型108

6.3 泛型方法110

6.4 受限类型形式参数110

6.4.1 多重限制111

6.4.2 泛型方法和受限类型形式参数112

6.5 泛型、继承和子类型112

6.5.1 泛型类和子类型113

6.6 类型推导114

6.6.1 类型推导和泛型方法114

6.6.2 类型推导和泛型类的实例化115

6.6.3 类型推导与泛型类和非泛型类的泛型构造函数115

6.7 通配符116

6.7.1 上界通配符116

6.7.2 无界通配符117

6.7.3 下界通配符118

6.7.4 通配符和子类型118

6.7.5 通配符匹配和辅助方法119

6.7.6 通配符使用指南121

6.8 类型擦除122

6.8.1 泛型类型的擦除122

6.8.2 泛型方法的擦除123

6.8.3 类型擦除效果和桥方法124

6.8.4 不可具体化类型125

6.9 泛型的局限性128

6.9.1 不能用基本数据类型实例化泛型类型128

6.9.2 不能创建类型参数实例128

6.9.3 不能声明类型为“类型参数”的静态字段128

6.9.4 对参数化类型不能用类型转换或instanceof运算符129

6.9.5 不能创建参数化类型数组129

6.9.6 不能创建、捕获或抛出参数化类型的对象130

6.9.7 每次重载时其形式参数类型都被擦为相同的原生类型的方法不能重载130

6.10 问题和练习:泛型130

第7章 程序包133

7.1 程序包的创建134

7.2 程序包的命名135

7.2.1 命名约定135

7.3 程序包成员的使用136

7.3.1 用完全限定名指代程序包成员136

7.3.2 导入包成员136

7.3.3 导入整个程序包136

7.3.4 包的表面层次结构137

7.3.5 命名歧义性137

7.3.6 静态import语句137

7.4 源文件和类文件的管理138

7.4.1 设置CLASSPATH系统变量139

7.5 小结140

7.6 问题和练习:创建和使用包140

第8章 数字和字符串141

8.1 数字141

8.1.1 Number类141

8.1.2 格式化数字打印输出143

8.1.3 其他数学运算方法146

8.1.4 自动装箱和拆箱149

8.1.5 小结150

8.1.6 问题和练习:数字151

8.2 字符151

8.2.1 转义字符152

8.3 字符串153

8.3.1 创建字符串153

8.3.2 字符串长度153

8.3.3 字符串连接154

8.3.4 创建格式字符串155

8.3.5 数字和字符串之间的转换155

8.3.6 操作字符串中的字符157

8.3.7 比较字符串和字符串的子串160

8.3.8 StringBuilder类161

8.3.9 小结164

8.3.10 问题和练习:字符和字符串165

第9章 异常166

9.1 什么是异常166

9.2 捕获或指明规定167

9.2.1 三类异常167

9.2.2 绕过捕获或指明168

9.3 捕获和处理异常168

9.3.1 try块169

9.3.2 catch块169

9.3.3 finally块170

9.3.4 try-with-resources语句171

9.3.5 汇总174

9.4 指明一个方法抛出的异常176

9.5 如何抛出异常176

9.5.1 throw语句177

9.5.2 Throwable类及其子类177

9.5.3 Error类178

9.5.4 Exception类178

9.5.5 链式异常178

9.5.6 创建异常类179

9.6 未检查异常:争议180

9.7 异常的优点180

9.7.1 优点1:把错误处理代码和“正规”代码分离开181

9.7.2 优点2:根据调用栈上传错误182

9.7.3 优点3:对错误类型进行分组和加以区分183

9.8 小结184

9.9 问题和练习:异常184

第10章 基本I/O和NIO.2186

10.1 I/O流186

10.1.1 字节流187

10.1.2 字符流188

10.1.3 缓冲流190

10.1.4 扫描和格式化191

10.1.5 命令行I/O195

10.1.6 数据流197

10.1.7 对象流198

10.2 文件I/O(以NIO.2为特征)199

10.2.1 什么是路径(以及其他文件系统情况)200

10.2.2 Path类201

10.2.3 文件操作206

10.2.4 检查文件或目录209

10.2.5 删除文件或目录210

10.2.6 复制文件或目录210

10.2.7 移动文件或目录211

10.2.8 管理元数据(文件和文件存储属性)211

10.2.9 读取、写入和创建文件216

10.2.10 随机存取文件221

10.2.11 创建和读取目录222

10.2.12 符号链接或其他方式的链接224

10.2.13 遍历文件树226

10.2.14 查找文件229

10.2.15 监视目录的变化232

10.2.16 其他有用的方法236

10.2.17 遗留文件的I/O代码237

10.3 小结239

10.4 问题和练习:基本I/O和NIO.2239

第11章 集合240

11.1 集合简介240

11.1.1 集合框架是什么241

11.1.2 Java集合框架的好处241

11.2 接口241

11.2.1 Collection接口243

11.2.2 遍历集合244

11.2.3 Collection接口的批量操作244

11.2.4 Collection接口的数组操作245

11.2.5 Set接口245

11.2.6 List接口248

11.2.7 Queue接口255

11.2.8 Map接口257

11.2.9 对象排序262

11.2.10 SortedSet接口267

11.2.11 SortedMap接口269

11.2.12 小结270

11.2.13 问题和练习:接口270

11.3 实现271

11.3.1 Set实现273

11.3.2 List实现274

11.3.3 Map实现274

11.3.4 Queue实现276

11.3.5 封装实现277

11.3.6 简单实现278

11.3.7 小结279

11.3.8 问题和练习:实现280

11.4 算法280

11.4.1 排序280

11.4.2 混排282

11.4.3 常规数据操作282

11.4.4 查询282

11.4.5 组合283

11.4.6 查找极值283

11.5 自定义集合实现283

11.5.1 编写实现的原因283

11.5.2 如何编写自定义实现284

11.6 互操作性285

11.6.1 兼容性285

11.6.2 API设计287

第12章 并发289

12.1 进程和线程289

12.1.1 进程289

12.1.2 线程290

12.2 线程对象290

12.2.1 定义和启动一个线程290

12.2.2 使用sleep方法暂停执行291

12.2.3 中断292

12.2.4 联合293

12.2.5 SimpleThreads实例293

12.3 同步294

12.3.1 线程冲突294

12.3.2 内存一致性错误295

12.3.3 同步方法296

12.3.4 内部锁和同步297

12.3.5 原子访问298

12.4 活性298

12.4.1 死锁299

12.4.2 饥饿和活锁299

12.5 保护块300

12.6 不可变对象303

12.6.1 同步类实例303

12.6.2 定义不可变对象的一种策略304

12.7 高级并发对象305

12.7.1 锁对象305

12.7.2 执行器307

12.7.3 并发集合311

12.7.4 原子变量311

12.7.5 并发随机数312

12.8 问题和练习:并发313

第13章 正则表达式314

13.1 简介315

13.1.1 什么是正则表达式315

13.1.2 包中的正则表达式如何表示315

13.2 测试工具315

13.3 字符串文字316

13.3.1 元字符317

13.4 字符类317

13.4.1 简单类318

13.5 预定义字符类320

13.6 量词322

13.6.1 零长度匹配323

13.6.2 捕捉组和拥有量词的字符类325

13.6.3 贪婪型、勉强型和占有型量词之间的区别325

13.7 捕捉组326

13.7.1 编号326

13.7.2 反向引用327

13.8 边界匹配器327

13.9 模式类方法329

13.9.1 使用标记创建模式329

13.9.2 嵌套标记表达式330

13.9.3 使用matches (String,CharSequence)方法331

13.9.4 使用split (String)方法331

13.9.5 其他实用方法332

13.9.6 java.lang.String中模式方法的等价332

13.10 匹配类方法332

13.10.1 索引方法332

13.10.2 学习方法333

13.10.3 替换方法333

13.10.4 使用start和end方法333

13.10.5 使用matches和lookingAt方法334

13.10.6 使用replaceFirst (String)和replaceAll (String)335

13.10.7 使用appendReplacement(StringBuffer, String)和appendTail(StringBuffer)336

13.10.8 Matcher方法在j ava.lang.String中的等价336

13.11 模式语法异常类方法336

13.12 Unicode支持338

13.12.1 匹配特定代码点338

13.12.2 Unicode字符属性338

13.13 附加资源338

13.14 问题和练习:正则表达式339

第14章 平台环境340

14.1 配置工具340

14.1.1 属性340

14.1.2 命令行参数343

14.1.3 环境变量344

14.1.4 其他配置工具345

14.2 系统工具345

14.2.1 命令行I/O对象345

14.2.2 系统属性346

14.2.3 安全管理器348

14.2.4 系统的其他方法349

14.3 路径和类路径349

14.3.1 更新PATH环境变量(Microsoft Windows)349

14.3.2 更新PATH变量(Solaris和Linux)351

14.3.3 检查CLASSPATH变量(所有平台)351

14.4 问题和练习:平台环境352

第15章 JAR文件353

15.1 JAR文件使用入门353

15.1.1 创建JAR文件354

15.1.2 查看JAR文件内容356

15.1.3 抽取JAR文件内容357

15.1.4 更新JAR文件358

15.1.5 运行打包为JAR的软件359

15.2 清单文件使用入门360

15.2.1 理解默认的清单文件361

15.2.2 修改清单文件361

15.2.3 设置应用程序的入口点362

15.2.4 将类文件加入JAR文件的类路径363

15.2.5 设置包版本信息363

15.2.6 用JAR文件封装包364

15.2.7 封装JAR文件365

15.3 JAR文件的签名和验证365

15.3.1 理解签名和验证365

15.3.2 对JAR文件签名367

15.3.3 验证签名的JAR文件369

15.4 使用JAR相关API369

15.4.1 实例:JarRunner应用369

15.5 问题:JAR文件373

第16章 Java Web Start374

16.1 开发Java Web Start应用程序375

16.1.1 创建顶层JPanel类375

16.1.2 创建应用程序376

16.1.3 从最后部署机制中分离出核心方法的好处376

16.1.4 获取资源376

16.2 部署Java Web Start应用377

16.2.1 设置Web服务器378

16.3 显示自定义的加载进度指示器378

16.3.1 开发自定义的加载进度指示器378

16.3.2 为Java Web Start应用指定自定义的加载进度指示器380

16.4 运行Java Web Start应用381

16.4.1 通过浏览器运行Java Web Start应用381

16.4.2 通过Java Cache Viewer运行Java Web Start应用381

16.4.3 从桌面运行Java Web Start应用381

16.5 Java Web Start与安全382

16.5.1 动态下载HTTPS认证382

16.6 Java Web Start常见问题382

16.7 问题和练习:Java Web Start383

第17章 applet384

17.1 开始使用applet384

17.1.1 定义Applet类的子类385

17.1.2 Milestones方法385

17.1.3 applet的生命周期386

17.1.4 applet执行环境387

17.1.5 开发applet388

17.1.6 部署applet390

17.2 applet更多功能392

17.2.1 查找和加载数据文件392

17.2.2 定义和使用applet参数392

17.2.3 显示简短的状态字符串394

17.2.4 在浏览器中显示文档395

17.2.5 从applet调用JavaScript代码396

17.2.6 从JavaScript代码中调用applet方法397

17.2.7 通过事件句柄处理初始化状态400

17.2.8 操纵applet网页的DOM401

17.3 显示自定义的加载进度指示器402

17.3.1 开发自定义的加载进度指示器402

17.3.2 为applet指定加载进度指示器405

17.3.3 将加载进度指示器和applet用户界面结合405

17.3.4 将诊断写入标准输出和错误流405

17.3.5 开发可拖动的applet406

17.3.6 和其他applet交互408

17.3.7 与服务器端应用交互409

17.3.8 applet能做什么和不能做什么410

17.4 applet常见问题及解决方案411

17.5 问题和练习:applet412

第18章 Java富互联网应用系统413

18.1 设置可信参数和安全属性413

18.1.1 系统属性414

18.2 JNLP API415

18.2.1 通过JNLP API获取客户端416

18.3 cookie418

18.3.1 cookie的类型419

18.3.2 RIA中的cookie支持419

18.3.3 获取cookie419

18.4 自定义加载体验420

18.5 RIA中的安全421

18.6 问题和练习:Java富互联网应用系统421

第19章 深入理解部署423

19.1 部署工具423

19.1.1 部署工具脚本所在位置423

19.1.2 部署applet424

19.1.3 部署Java Web Start应用427

19.1.4 检查客户端的JRE软件版本428

19.2 Java网络加载协议429

19.2.1 JNLP文件结构429

19.3 部署的最佳实践433

19.3.1 减少下载时间433

19.3.2 避免不必要的更新检查435

19.3.3 只有必要时才签名JAR文件436

19.3.4 确保JRE软件存在436

19.4 问题和练习:深入理解部署437

附录 Java程序语言认证考试复习大纲438

热门推荐