Lesson 1a * Packages and Classes * Types and Identifiers * Operators Lesson 1b * Input/Output * Control Structures * Errors and Exceptions (74-75) Lesson 2a (Teukolsky 92) * Objects (92) and classes (93-101) * Encapsulation (93) * References (101-110) Lesson 2b * Keywords: public, private, & static (94) * Methods (95-99) * Scope of variables (100-101) Lesson 3a * Superclasses and subclasses (131-137) * Inheritance Hierarchy (131-137) * Polymorphism (138-140) Lesson 3b * Type compatibility (140-142) * Abstract classes (142-144) * Interfaces (144-148) Lesson 4a * The Object Class (174-176) * The String Class (177-180) * Wrapper Classes (180-183) Lesson 4b * The Math Class (183-184) * Random numbers (184-187) Lesson 5a * Final Variables (63) * Development Cycles (207) Lesson 5b * Design and Debugging Terms (219) * Structure Terms and Errors (219) Lesson 6a (233-241) * Arrays (233-241) Lesson 6b (242-289) * Array Lists (241-242) * The List Interface (243) * ArrayList (244-246) * Collections & Iterators (247-249) * Two-Dimensional Arrays (249-254) Lesson 7a * Recursive Methods (290-295) * Sorting Algorithms That Use Recursion (295-298) Lesson 7b * Recursion in Two-Dimensional Grids (298-307) Lesson 8a * Selection and Insertion Sorts (324-325) * Recursive Sorts: Mergesort and Quicksort (325-328) Lesson 8b * Sorting Algorithms in Java (328-330) ## Chapter 9: The AP Computer Science A Labs (labs are not directly related to the AP test, but principles from them will be used) Lesson 9a * The Magpie Lab [modifying a chat bot] (351-353) * The Elevens Lab [card game] (353-356) Lesson 9b * The Picture Lab (356-359) ## Known Issues: * Formatted text field, as created using the instructions properly, erases the value unless you add a dollar sign * Ships do not reload values if you change the values on the form (they are only gathered from the form when the form is constructed) * casting of classes such as downcasting (Teukolsky 140) is not covered.