Skip to content
CS 159, Spring 2026
May 01: Linked Structures
Initializing search
Home
Syllabus
Calendar
Help
Notes
CS 159, Spring 2026
Home
Syllabus
Calendar
Help
Notes
Notes
Week 1: Introduction
Week 1: Introduction
Jan 21: Hello, Java!
Jan 23: Getting Started
Week 2: Java Basics
Week 2: Java Basics
Jan 26: CodingBat Logic
Jan 28: Classes and UML
Jan 30: Types and Math
Week 3: Classes
Week 3: Classes
Feb 02: Writing a Class
Feb 04: Loops and Arrays
Feb 06: CodingBat Loops
Week 4: Enums
Week 4: Enums
Feb 09: ArrayList Objects
Feb 11: Bob's Grocery Mart
Feb 13: Enum Types
Week 5: Testing
Week 5: Testing
Feb 16: Air Quality Lab
Feb 18: Midterm Exam #1
Feb 20: Runtime Exceptions
Week 6: References
Week 6: References
Feb 23: Testing Methods
Feb 25: Writing JUnit Tests
Feb 27: Memory Diagrams
Week 7: Objects
Week 7: Objects
Mar 02: Object References
Mar 04: Greenfoot Tutorial
Mar 06: Review Weeks 5–7
Week 8: File I/O
Week 8: File I/O
Mar 09: File/Input Output
Mar 11: Midterm Exam #2
Mar 13: Extending Classes
Week 9: Inheritance
Week 9: Inheritance
Mar 23: Overriding Methods
Mar 25: Spring Cleaning
Mar 27: Abstract Classes
Week 10: Abstraction
Week 10: Abstraction
Mar 30: Java Interfaces
Apr 01: Polymorphism
Apr 03: Static vs Dynamic
Week 11: Composition
Week 11: Composition
Apr 06: (Im)Mutable Objects
Apr 08: Polymorphic Design
Apr 10: Review Weeks 8–11
Week 12: Recursion
Week 12: Recursion
Apr 13: Recursive Drawings
Apr 15: Midterm Exam #3
Apr 17: CodingBat Recursion
Week 13: Collections
Week 13: Collections
Apr 20: Tracing Recursion
Apr 22: Java Collections
Apr 24: Word Clouds Lab
Week 14: 2D Arrays
Week 14: 2D Arrays
Apr 27: Using Iterators
Apr 29: The Game of Life
May 01: Linked Structures
Week 15: Final Review
Week 15: Final Review
May 04: Math Dice Review
May 06: Final Exam Prep
May 01: Linked Structures