+1 (980) 272-1787

Page 1 of 2 Results 1 - 10 of 18

Errata Entries Order by:  Page Number  Reported By  Reported On
Pg: 68
Status: Fixed
Fixed in Build: 13
Reported On: 2019-01-10
Reported By:
Location: 3.3.3 - Assigning values to variables - primitive assignment
Old Text:
For example, you know that the size of a byte (8 bits) is smaller than the size of an int (16 bits)
New Text:
For example, you know that the size of a byte (8 bits) is smaller than the size of an int (32 bits)
Comments:

Pg: 104
Status: Fixed
Fixed in Build: Build 10, 2018-12-03
Reported On: 2018-12-02
Reported By: -
Location: 4.3.1 - multidimensional-arrays
Old Text:
You cannot, however, leave out the size of a higher dimension if you want to specify the size of a lower dimension. For example, you cannot do new int[][2]; This is not possible because the number of int[][] references depends on how many int[] objects do you have. If you have three int[] objects, that means you will have 3x2 = 6 int[][] references. The JVM cannot figure this out without knowing the length of all the higher dimensions.
New Text:
You cannot, however, leave out the size of a higher dimension if you want to specify the size of a lower dimension. For example, you cannot do new int[][2]; The reason is simple - new int[][2] tries to create an array of int[2] objects. But it it does not tell the JVM how many int[2] objects you want to store. Without this information, the JVM has no idea how much space it needs to allocate for this array. On the other hand, new int[2][] is fine because now, you are telling the JVM that you want to create an array of length 2. In this case, the JVM is clear that it needs to allocate space to store 2 references. Remember that the size of a reference doesn't depend on the length of the array to which it points. So, the JVM doesn't care about the length of the arrays to which these two references will refer. It simply allocates space to store 2 references.
Comments:

Pg: 292
Status: Fixed
Fixed in Build: Build 8, 2018-11-20
Reported On: 2018-11-20
Reported By: --
Location: 10.4 - Exceptions thrown by Application Programmer
Old Text:
$\vert$$\vert$
New Text:
||
Comments:
Mistake in typesetting of the paperback version. Kindle version was OK.
Pg: 272
Status: Fixed
Fixed in Build: Build 7, 2018-10-20
Reported On: 2018-10-17
Reported By: Arold Aroldson
Location: 10.2.0 - differentiate-among-checked-exceptions-unchecked-exceptions-and-errors
Old Text:
Diagram showing various exceptions shows ClassCastException under checked exceptions
New Text:
Diagram showing various exceptions shows ClassCastException under unchecked exceptions
Comments:
Associated text is correct. Only the diagram is incorrect.
Pg: 110
Status: Fixed
Fixed in Build: Build 6, 2018-10-07
Reported On: 2018-10-07
Reported By: Cristian Palau
Location: 5.1.1 - overview-of-operators-available-in-java
Old Text:
System.out.println(false != flag); //comparing a boolean with a Boolean, prints true because flag is false
New Text:
System.out.println(false != flag); //comparing a boolean with a Boolean, prints false because flag is false
Comments:

Pg: 66
Status: Fixed
Fixed in Build: Build 7, 2018-10-20
Reported On: 2018-10-20
Reported By: Flex567
Location: 3.3.3 - literals
Old Text:
You cannot start or end a literal with an underscore and cannot use multiple underscores consecutively.
New Text:
You cannot start or end a literal with an underscore. You can also use multiple underscores consecutively. You don't need to worry about the rules governing the usage of underscores in hexadecimal, binary, and octal number formats.
Comments:

Pg: 369
Status: TBF
Fixed in Build: -
Reported On: 2018-12-11
Reported By: Flex567
Location: 12.5.2 - Parts of a Lambda expression
Old Text:
(a, b, c) -> a + b + c; //valid ... a ->a + 2; //valid a - >return a + 2; //invalid, must not have return keyword
New Text:
(a, b, c) -> a + b + c //valid ... a ->a + 2 //valid a - >return a + 2 //invalid, must not have return keyword
Comments:
Sample lambda expressions should not have semi-colons at the end.
Pg: 51
Status: Fixed
Fixed in Build: Build 12, 2019-01-06
Reported On: 2019-01-02
Reported By: OCAJO1
Location: 2.7 Compare and contrast the features and components of Java - Point 6
Old Text:
A Java application can be run with a .
New Text:
A Java application can be run with a Security Manager.
Comments:

Pg: 82
Status: Fixed
Fixed in Build: 13
Reported On: 2019-01-09
Reported By: OCAJO1
Location: 3.5.3 - Garbage Collection for the exam
Old Text:
Diagrams are off by 1 step. Diagrams shown at step 2, 3, 4 should be at step 1, 2, and 3.
New Text:
Diagrams are aligned with the steps
Comments:
Diagrams and steps are correct. Only their alignment is wrong.
Pg: 71
Status: Fixed
Fixed in Build: Build 9, 2018-11-26
Reported On: 2018-11-26
Reported By: Username987654
Location: 3.3.3 - Assigning float to int or double to long and vice-versa
Old Text:
Two errors - 1. Part of the sentence, "Java allows such assignments without a cast because it is possible to get back the exact same int or long value from a float or a double if you round them off." must be removed. 2. The statement, "i = f1; //will not compile" in the code should be removed.
New Text:
Java allows such assignments without a cast nonetheless.
Comments:

Page 1 of 2 Results 1 - 10 of 18