Page 1. Java data types: objects and primitives, and some ramifications. Immutability of wrapper classes and Strings. Object value equality vs. object identity equality.Page 2. Further notes on Strings and syntactic sugars thereof. Java arrays, and the vast differences with C++ arrays.Page 3. Java environment and tools. Compilers, bytecodes, and virtual machines.Page 4. Virtual machines and Java performance issues.Page 5. Modules in Java: package declarations.Page 6. Consequences of packages, and miscellaneous package details.
Examples.java: short examples
whales/KillerWhale.java
whales/baleen/HumpbackWhale.java
Make sure you put these in the correct relative paths.