描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302503811
声明
访问控制
面向对象
赋值
运算符
流程控制
异常
字符串和StringBuilder
数组和ArrayList
日历API
简单的Lambda表达式
第1章 声明和访问控制 1
1.1 Java复习 2
1.1.1 标识符和关键字 2
1.1.2 继承 2
1.1.3 接口 2
1.2 Java的特性和优点(OCA
考点1.5) 3
1.3 标识符和关键字(OCA考点
1.2和2.1) 4
1.3.1 合法的标识符 4
1.3.2 Oracle的Java语言编码规范 5
1.4 定义类(OCA考点1.2, 1.3, 1.4,
6.4, 7.5) 6
1.4.1 源文件的声明规则 7
1.4.2 使用javac和java命令 7
1.4.3 使用public static void main
(String[ ] args) 8
1.4.4 import语句和Java API 9
1.4.5 静态导入语句 10
1.4.6 类声明和修饰符 11
1.5 使用Java接口(OCA考点7.5) 16
1.5.1 声明接口 16
1.5.2 声明接口常量 18
1.5.3 声明default接口方法 19
1.5.4 声明static接口方法 19
1.6 声明类成员(OCA考点2.1, 2.2,
2.3, 4.1, 4.2, 6.2, 6.3, 6.4) 20
1.6.1 访问修饰符 20
1.6.2 非访问成员修饰符 30
1.6.3 构造函数的声明 35
1.6.4 变量的声明 35
1.7 声明和使用枚举类型(OCA
考点1.2) 42
1.7.1 声明枚举类型 43
1.7.2 在枚举类型中声明构造函数、
方法和变量 44
1.8 认证考试总结 46
1.9 两分钟冲刺 47
1.10 自测题 52
1.11 自测题答案 57
第2章 面向对象 59
2.1 封装(OCA考点6.1和6.5) 60
2.2 继承和多态(OCA考点7.1
和7.2) 62
2.2.1 继承的进化 63
2.2.2 IS-A和HAS-A关系 65
2.3 多态(OCA考点7.2) 68
2.4 重写/重载(OCA考点6.1
和7.2) 71
2.4.1 重写方法 71
2.4.2 重载的方法 75
2.5 类型转换(OCA考点2.2
和7.3) 80
2.6 实现接口(OCA考点7.5) 82
2.7 合法的返回类型(OCA考点2.2
和6.1) 87
2.7.1 返回类型声明 87
2.7.2 返回值 88
2.8 构造函数和实例化(OCA考点
6.3和7.4) 89
2.8.1 构造函数基础 90
2.8.2 构造函数链 90
2.8.3 构造函数的规则 91
2.8.4 判断是否会创建默认构造
函数 92
2.8.5 重载的构造函数 95
2.9 初始化块(OCA考点1.2
和6.3) 98
2.10 Static(OCA考点6.2) 100
2.11 认证考试总结 105
2.12 两分钟冲刺 106
2.13 自测题 109
2.14 自测题答案 116
第3章 赋值 119
3.1 栈和堆的快速回顾 120
3.2 字面值、赋值和变量(OCA
考点2.1,2.2和2.3) 121
3.2.1 所有基本类型的字面值 121
3.2.2 赋值运算符 124
3.3 作用域(OCA考点1.1) 131
3.4 变量初始化(OCA考点2.1,4.1
和4.2) 133
3.4.1 使用未初始化和未赋值的
变量或数组元素 133
3.4.2 局部(栈、自动)基本类型变量
和对象类型变量 135
3.5 将变量传递给方法(OCA考
点6.6) 139
3.5.1 传递对象引用变量 139
3.5.2 Java使用值传递语义吗 140
3.5.3 传递基本类型变量 141
3.6 垃圾回收(OCA考点2.4) 143
3.6.1 内存管理和垃圾回收概要 143
3.6.2 Java垃圾回收器概要 143
3.6.3 编写代码显式地将对象标记
为可回收对象 144
3.7 认证考试总结 149
3.8 两分钟冲刺 149
3.9 自测题 151
3.10 自测题答案 157
第4章 运算符 159
4.1 Java运算符(OCA考点3.1,3.2
和3.3) 160
4.1.1 赋值运算符 160
4.1.2 关系运算符 161
4.1.3 instanceof比较运算符 165
4.1.4 算术运算符 167
4.1.5 条件运算符 171
4.1.6 逻辑运算符 172
4.1.7 运算符的优先级 175
4.2 认证考试总结 177
4.3 两分钟冲刺 177
4.4 自测题 179
4.5 自测题答案 183
第5章 流程控制和异常 187
5.1 使用if和switch语句(OCA考
点3.3和3.4) 188
5.1.1 if-else分支语句 188
5.1.2 switch语句 192
5.2 创建循环结构(OCA考点5.1,
5.2,5.3,5.4,5.5) 198
5.2.1 使用while循环 198
5.2.2 使用do循环 199
5.2.3 使用for循环 199
5.2.4 使用break和continue 203
5.2.5 无标签的语句 204
5.2.6 带标签的语句 205
5.3 处理异常(OCA考点8.1,8.2,
8.3,8.4,8.5) 206
5.3.1 使用try和catch捕获异常 207
5.3.2 使用finally 208
5.3.3 未捕获异常的传递 210
5.3.4 定义异常 212
5.3.5 异常的层级结构 212
5.3.6 处理异常树上的整个类 213
5.3.7 异常的匹配 214
5.3.8 异常的声明和公共接口 215
5.3.9 重新抛出同一个异常 219
5.4 常见的异常和错误(OCA考
点8.5) 220
5.4.1 异常来自于何处 220
5.4.2 JVM抛出的异常 221
5.4.3 由程序抛出的异常 221
5.4.4 考试范围中的异常和错误的
总结 222
5.5 认证考试总结 223
5.6 两分钟冲刺 224
5.7 自测题 226
5.8 自测题答案 233
第6章 字符串、数组、ArrayList、日
期与lambada表达式 237
6.1 使用字符串和StringBuilder类
(OCA考点9.2和9.1) 238
6.1.1 String类 238
6.1.2 关于字符串和内存的重要
事实 242
6.1.3 String类中的重要方法 243
6.1.4 StringBuilder类 245
6.1.5 StringBuilder类的一些重要
方法 247
6.2 处理日历数据(OCA考点9.3) 248
6.2.1 不变性 249
6.2.2 工厂类 250
6.2.3 使用和处理日期和时间 250
6.2.4 格式化日期和时间 252
6.3 使用数组(OCA考点4.1
和4.2) 253
6.3.1 声明数组 253
6.3.2 构造数组 254
6.3.3 初始化数组 256
6.4 使用ArrayList和封装类(OCA
考点9.4和2.5) 263
6.4.1 何时使用ArrayList 264
6.4.2 实际使用中的ArrayList方法 266
6.4.3 ArrayList类的重要方法 266
6.4.4 ArrayList的自动装箱 267
6.4.5 Java 7的“菱形”语法 270
6.5 高级封装(OCA考点6.5) 270
6.6 使用简单的lambda表达式
(OCA考点9.5) 271
6.7 认证考试总结 275
6.8 两分钟冲刺 276
6.9 自测题 278
6.10 自测题答案 286
附录A 关于模拟考试软件 289
《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的组织结构
《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的内容面向深度复习OCA 8认证考试的人群,包括资深的Java专家和Java技术的初学者。每一章至少都覆盖认证考试的一个方面,强调Java编程中的“为什么”和“如何做”。
《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》下载资源中包含了两个80个问题的测试。
《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》不包含的内容
《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》并不包含Java的初学者手册。 《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的所有内容都专注于考试内容。如果你从未学习过Java,我们建议你在Java基础知识上多花些时间。在没有了解如何编写、编译和运行简单的Java程序之前,不建议阅读《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》。而且,我们不介绍每一个主题所需要的先验知识。而另一方面,对于任一主题(主题内容严格按照实际考试目标制定),我们假定读者并未学习过该主题,并以此为前提来准备《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的内容。即,我们假定读者不具备各个主题相关的知识,但是具备基础的Java知识。
同时,《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的目的并不是让读者同时掌握考试内容和Java技术。这是一个认证考试的学习指南,它的目的性非常明确。这并不是说准备Java认证考试,对成为一名Java程序员毫无帮助。相反,即便是非常资深的Java开发人员,他们通常也会认为学习认证考试内容能够拓宽他们的知识面,丰富编程经验。
建议
在读完《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》后,留一些空闲时间做一次全面复习。你可能会使用如下方法复习《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的内容:
(1) 重读所有的“两分钟冲刺”,或者是让别人考你这部分知识。这些内容也可以作为你考前死记硬背的知识点。你可以考虑针对这些内容做一些学习卡片。
(2) 重新阅读所有的考试须知。记住,这些考试须知来自于认证考试出题者之手。他们知道你将会面临的是什么,以及你需要小心的内容是什么。
(3) 重做自测题。在学习每一章后,完成自测题,有助于利用这些问题加强所学知识点。然而,更好的办法是先不做测试,而是在读完全书后,一次性将所有测试做完。就像是在完成认证考试一样(每次测试时,在单独的一张草稿纸上记录答案,这样在掌握内容之前,你可以一遍遍地重复测试)。
(4) 完成练习。我们对练习的设计涵盖了认证考试的考试内容,学习《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》好的方法是实战练习。在每一步练习中,要确保了解它的真正含义。如果有知识点不够清楚,重新阅读当前章节的内容。
(5) 多编写Java代码。我们会多次强调这个建议。当编写此书时,我们编写了几百个Java小程序用来做研究。根据通过认证考试的考生的反馈,我们了解到几乎所有的考生中,在学习期间编写代码的考生的成绩都非常好。在尝试《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》的代码时,可能会创建无数的编译错误——抛开IDE,打开命令行,编写代码吧!
《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》内容介绍
OCA 8考试是IT行业难的认证考试之一。而且很多考生都在毫无准备的情况下参加考试。通常作为程序员,我们只需要在疯狂的后期限之前完成我们手中的项目。
但是这个认证考试的目的,是要证明你对Java知识的全面理解,不仅是熟悉工作中使用的部分。
仅靠经验不足以让你通过考试,因为你的理解可能与事实存有偏差。同时,仅仅是让手上的代码成功运行是不够的,你需要深度理解核心功能,并且在广度上能够覆盖使用语言时可能出现的任何情况。
对认证考试感兴趣的人
雇主、猎头、程序员,都很在意这个认证考试。通过考试,能够向现在或者未来的雇主证明三件事情:你很聪明;你知道如何学习和准备具有挑战性的测试;而重要的是,你了解Java语言。如果雇主面前出现两个候选人,分别是通过认证考试的人和未通过认证考试的人,雇主深知通过考试的人不需要再花费额外的时间学习Java语言。
但是,这能够说明你可以熟练使用Java语言做软件开发了吗?并不是这样的,但这至少是一个好的开端。想要真正展示你的开发能力(对比对语言知识的掌握能力),你应该考虑参加Java Developer Exam,在这个考试中,你的试题是创建并完成一个项目,然后提交给评审员评分。
参加程序员的考试
在理想世界中,对知识掌握的评估,不能是简单地回答若干个测试问题。但是,人生本就不够完美,而且对每一个人的知识进行一对一的检测,也并不现实。
对于多数的Oracle认证,Oracle对考生的评估使用的是基于电脑的测试系统。为了抵制简单的死记硬背,Oracle认证考试为不同的考生提供不同的问题。在试题的开发过程中,基础测试者对成百上千个问题进行编译和修订。从这个庞大的题库中,抽取每一个主题的问题,组成不同版本的考试。
每个Oracle考试都有固定数量的问题,考试的时长非常充裕。考试的剩余时间显示在屏幕的角落。如果在考试过程中超时,测试将自动终止,未完成答案视为错误答案。
考试须知
很多经验丰富的考生都不会回到已完成的题目上更改答案,除非有非常确定的原因。只有当读题有误或理解问题有误时,才会更改答案。紧张可能会让你对答案做出第二次猜测,从而将正确答案改为错误答案。
在完成考试后,你会收到来自Oracle公司的一封电子邮件,告知考试结果已经公布在网站上。截至2017年冬季,考试成绩都可以在certview.oracle.com网站查询。如果需要打印证书,可以提出特殊申请。
问题的形式
Oracle Java考试的内容以多选题的形式呈现。
多选题
在早期的考试中,当遇到多选问题时,是不显示有多少个正确答案的。但是在后续的版本中,问题变得越来越难。因此,在现在的考试中,每一道多选题都标明了正确答案的个数。《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》每一章后的自测题中,严格遵循实际考试中的问题格式、措辞和难度,但是有两处例外:
● 我们的问题尽量不标明有多少个正确答案(我们会说“选择所有正确的答案”)。我们的目的是让你能够掌握书中的内容。当标明正确答案的个数时,有些聪明的考生能够从中排除错误答案。而且,如果正确答案的个数已知,就可以选择可能正确的几个答案。我们的目的是锻炼你,让你在真正的考试中更加游刃有余。
● 真正的考试往往在问题中标注代码的行数。有时,我们不会为代码标记行数——因此,在多数情况下,我们有更多的空间在关键点上添加备注。在实际考试中,如果代码的起始行是第1行,这意味着你在看整篇代码。如果代码的起始行比1大,这意味着你在看的是一部分源代码。在查看部分源代码时,其前提是未呈现的其他代码部分是正确的(例如,除非有明显的说明,否则我们认为呈现的部分源代码对应的源码中,有正确的import和package语句)。
考试须知
当你发现自己被某个多选问题卡住时,使用你的草稿纸(或白板)写下你认为有可能正确的两三个答案,然后标记出你认为有可能正确的答案。例如,下面是参加考试的一份草稿纸上的内容:
● 21. B或C
● 33. A或C
这在标记当前问题后继续做题时,是非常有用的。之后当你重新考虑这个问题时,能直接拾起初做题时的思路。使用这个方法,可以避免重读问题或重新思考问题。在遇到复杂的、基于文本的问题时,也需要使用草稿纸创建可视的内容,从而更好地理解问题。这个方法对于视觉学习者尤为有效。
参加考试的小窍门
对于每次考试来说,问题的数目和及格分数都是可变的。在参加考试之前,一定要去www.Oracle.com网站上了解清楚。
在整个考试过程中,可以使用任何顺序答题,也可以随时回到任意已经回答的题目上检查答案。对于错误的答案,并不会倒扣分,所以宁可答错也不要跳过题目。
一个好的策略是遍快速浏览并回答所有问题,然后再返回处理。在回答一个问题时,你的思路可能还停留在上一个问题上。
要仔细对待示例代码。首先检查语法错误:分别计算大括号、分号、小括号的数量,然后确保括号都是成对出现的。在读懂代码功能之前,查找大小写错误,以及其他类似的语法错误。
考试中的很多问题都可能在隐蔽的语法上做文章。需要掌握周密的Java语言知识,才可以成功。
这也给我们带来了其他考生反馈的另一个问题。测试中心应该为考生提供充足的设备用于编写代码实现,使考生能够在“纸上”解决问题。在某些情况下,测试中心提供不充足的马克笔和擦写板。它们不仅小,而且用起来也非常笨重。我们建议在考前致电考试中心,询问是否会提供足够大的擦写板,和足够细的马克笔,以及好用的板擦。我们鼓励每一个人都向Oracle公司和考试机构抱怨,使他们提供真正的铅笔和若干空白纸张。
准备考试的小窍门
首先,给自己足够的学习时间。Java是一门复杂的编程语言。不能期望仅在一次学习中就可以记下所有需要掌握的知识。这是一个通过不断学习和实践才能掌握的科目。为自己建立一个学习计划并坚持执行。但是要注意合理安排时间,特别是还有正常的工作职责的考生。
准备认证考试的一个简单技巧,是使用每天15分钟的方法。每天少学习15分钟。这个时间不长,但却是一个重要的承诺。如果在某一天无法集中精神学习,那么就在15分钟后结束。如果某天的状态好,就学习更长的时间。如果状态好的次数更多,你就越容易成功。
在准备考试时,我们强烈建议准备学习卡片。每个卡片可以是简单的3cm×5cm或4cm×6cm的索引卡片,正面是问题,背面是答案。在每学习一个章节时,都制作一定数量的卡片,将你认为重要的知识点记在上面。你可以阅读卡片正面的问题,思考问题的答案,并翻阅背面的答案做对比检验。或者你也可以让其他人拿着卡片,然后验证你的答案是否正确。大多数学生都认为这是一个非常有效的方法,特别是它的灵活性。使用它可以在任何地点学习。当然,好不要在开车时学习,除非是在等红灯。我们曾经带着这些卡片出现在很多地方——医生的诊室、餐厅、影院等一切你能说得出名字的地方。
认证考试的学习小组是另一个极好的资源,Coderanch.com的Big Moose Saloon认证论坛是理想的社区。如果被《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》中的问题,或者是任何其他模拟考试的问题难住了,你可以在认证考试论坛上发表问题,你会在一天之内收到针对所有情况的答案——通常是在几小时之内就会收到答案。
后,我们建议编写更多的Java程序!在编著《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》时,我们编写了几百个Java小程序。而且,根据通过考试的考生的描述(这些考生的正确率是98%),他们都声称自己编写过很多代码。
规划你的考试
你可以通过Oracle公司或考试中心报名参加考试。访问Oracle.com(关于培训/认证的链接),或者访问PeasonVue.com,获取考试时间安排和考点安排的详细信息。
参加考试
与其他考试一样,你可能会在考试的前一天晚上临阵磨枪。抵制住这种想法。到了这个时候,你应该已经掌握了材料中的知识内容。如果第二天早上昏昏沉沉的,你会忘记昨晚学过的内容。不如睡个好觉!
早一点抵达考试地点,这能给你充足的时间放松,并复习重要知识点。这是个复习笔记的机会。如果没有精力学习,也可以早几分钟开始考试。我们不建议迟到,这可能会取消你的考试资格,或者导致没有足够的时间完成考试。
抵达考试中心后,你需要提供一个当前有效的带照片证件。访问PearsonVue.com以了解关于证件的要求。他们只是要确认你没有雇用隔壁的Java专家来替你考试。
除了大脑里的知识,你不需要带任何东西进入考场。事实上,你大脑里面的知识是允许带入考场的。
所有考试都是闭卷考试,这意味着你不能带入任何参考资料。同时,也不能从考场中带出任何笔记。监考老师会提供一个小的白板。如果允许的话,我们建议带一瓶水或果汁(参考考场携带须知)。这些考试的时间长,而且非常难,带些饮品能让你的大脑更加活跃。理想的方法是频繁地小口喝水。同时,你应该了解在整个考试过程中,允许有多少次的“中间休息”。
将手机放在车里,否则它只会让情况更加紧张,虽然考场中不允许携带手机,但有时仍然能听见它在考场外响起的声音。手提包、书籍和其他资料,必须在进入考场之前交给监考老师。
进入考场后,针对考试所用的软件会有个简要介绍。你肯定会被请求填写一份问卷反馈。填写问卷反馈的时间不计算在考试时间内——当然,快速地完成问卷反馈也不会延长考试的时间。同时,考题也不会因为问卷调查上的答案而变化。在完成问卷调查后,真正的考试才开始。
使用考试软件,你可以直接选择跳转到前一题或后一题。更重要的是,屏幕上会有一个标记复选框——这是一个非常重要的功能,后续内容会予以介绍。
参加考试的技巧
没有计划的进攻,考生可能会被试题打倒,或者是由于不断变换的题目导致时间不足。多数情况下,如果对于资料的复习到位,分配的时间足以完成考试。关键在于,不要在某个特殊的问题上花费太多的时间。
直接的目的就是准确并快速地回答问题,但是其他因素可能会使你分心。下面是使你更高效地完成考试的一些技巧。
评估困难
首先,在考试中快速浏览一遍所有的问题。通过“择优选择”的方法,选出简单的问题,并直接给予回答。简短地阅读每一个问题,注意问题的类型和主题。作为指导原则,建议花费少于25%的时间在这一部分。
这个步骤能让你对整个考试的范围和难易度有一个评估。它能帮助你如何分配时间。同时,对于某些问题,它也能告诉你在哪里找到可能的答案。有时,一道考题的描述可能为你解答另一个题目提供思路。
如果对于某个问题,不能够百分之百地确定答案,也先给它一个答案,但是用标记复选框标记它,用来做后续的检查。这样即使时间不充裕,至少做出了一个“猜测”,而不是留下空白。
第二,根据遍的经验,重新浏览整个考试。例如,如果整个测试看起来困难,那么在每一道题目上好多花费一两分钟。创建一些小的里程碑——例如“每15分钟完成10道问题”。
在这个阶段,跳过耗时较多的问题是一个不错的想法。在整个考试时间的50%或60%之前完成这一阶段。
第三,回顾标记过的问题,使用检查标记按钮,直接显示标记过的问题。这个步骤重新检查之前不确定答案的问题,以及因问题耗时太久而临时推迟的问题。在解答所有问题之前,可以一直处理这一组问题。
如果对标记的问题的答案更加放心,你可以取消对问题的标记。否则,就一直标记它。现在,继续处理耗时较多的问题,特别是那些需要手动计算的问题。在对计算的答案满意之后,取消对它们的标记。
经过这一步之后,虽然对有些答案仍不确定,但是你应该回答了整个考试的所有问题。如果在下一步之前已经没有时间了,至少不会因为缺少答案而失分。如果此时仍然有10%或20%的时间保留,你的节奏就非常好。
检查答案
现在,你轻松了!你已经回答了所有问题,而且准备做一轮质量检查。再一次浏览整个测试的问题,简要阅读每个问题和答案。
仔细地检查问题,查看是否有“陷阱”存在。特别是对于那些包含选项“无法编译”的题目,要格外谨慎。注意后一分钟的线索。此时,虽然你几乎已经熟悉了每个问题,但是你仍然可能会发现之前错过的一些线索。
重要的结尾
当你已经确定好所有的答案之后,通过提交答案来完成考试。完成考试后,如果考试成绩已经发布,你会收到来自Oracle公司的一封电子邮件,其中包含用于查询成绩的链接。截至编写《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》为止,你必须特殊地申请认证证书的实体复印,否则没有人会给你发送。
复考
如果你没能通过考试,不要泄气。尝试从另一个角度来理解这份经历,并且准备复考。至少你学到了一些知识。你会更了解考试的形式,并且在下一次考试时,能够更好地理解问题的难度。
如果能在失利之后快速恢复状态,你可能还会记住一些题目。这能够使你在复习时,侧重在正确的范围。
后,记住Oracle认证是很有价值的,因为获取这个认证很难。毕竟,如果所有人都可以获取,那它还有什么价值呢?后,它需要正确的心态和大量的学习,你可以做得到!
考试内容映射
下面的表格描述了考试的目标,以及在《OCA Java SE 8程序员认证考试指南(Exam 1Z0-808)》中如何找到对应的知识内容(注意:我们总结了Oracle.com网站上的一些描述)。
OCA Java SE 8 Programmer(考试1Z0-808)
考试目标 包含在书中
Java基础
定义变量作用域(1.1) 第3章
定义Java类的结构(1.2) 第1章和第2章
在main方法中创建一个可执行的Java应用(1.3) 第1章
导入Java包,使Java包在你的代码中可见(1.4) 第1章
比较和对比Java的特性(1.5) 第1章
评论
还没有评论。