Unit 1: Primitive Types
Get acquainted with the basics of Java programming.
21 Modules:
- 1.1 Warm Up!
- 1.2 Introduction
- 1.3 Visualizing Algorithms
- 1.4 Printing to the Console
- 1.5 Strings and Input
- 1.6 Abstraction
- 1.7 More on Methods
- 1.8 Composition
- 1.9 ASCII Art Methods
- 1.10 Algorithms and Methods Review
- 1.11 Algorithms and Methods Quiz
- 1.12 Encoding Information
- 1.13 Binary Numbers
- 1.14 Variables
- 1.15 How to Use Variables
- 1.16 Types
- 1.17 What's an Expression
- 1.18 Variable Initialization
- 1.19 Working with Numbers
- 1.20 Information Representation and Expressions Review
- 1.21 Information Representation and Expressions Quiz
Unit 2: Using Objects
Learn about object-oriented programming basics.
13 Modules:
- 2.1 Variables and Memory
- 2.2 Properties and Behaviors
- 2.3 Classes
- 2.4 Instance Variables and Methods
- 2.5 Constructors
- 2.6 Drawing Shapes
- 2.7 Introduction to Strings
- 2.8 String Methods
- 2.9 More String Methods
- 2.10 Substrings
- 2.11 The Math Class
- 2.12 Objects Review
- 2.13 Objects Quiz
Unit 3: Boolean Expressions and If Statements
Explore boolean values and boolean logic. Write programs that "make decisions" on their own.
7 Modules:
- 3.1 Simple Boolean Expressions
- 3.2 Logical Operators in Java
- 3.3 Using Relational and Logical Operators Together
- 3.4 Conditional Statements
- 3.5 Else and Else-If Statements
- 3.6 Conditionals Review
- 3.7 Conditionals Quiz
Unit 4: Iteration
Learn how to represent repeating patterns with code.
16 Modules:
- 4.1 The While Loop
- 4.2 Take Control of Loops
- 4.3 Infinite Loops
- 4.4 Draw With Loops
- 4.5 Randomness
- 4.6 While Loop Puzzles
- 4.7 While Loops Review
- 4.8 While Loops Quiz
- 4.9 For Loop Basics
- 4.10 Nested Loops
- 4.11 Accumulating, Filtering, Mapping
- 4.12 Loop Challenges
- 4.13 Common Pitfalls
- 4.14 Loops Review
- 4.15 Loops Quiz
- 4.16 Lab: Consumer Review
Unit 5: Writing Classes
A deep dive into object-oriented programming, covering topics like classes, constructors, and more.
12 Modules:
- 5.1 Constructors
- 5.2 Methods and Scope
- 5.3 Intangible Objects
- 5.4 Adding Functionality
- 5.5 toString
- 5.6 Separation of Concerns
- 5.7 Setters and Getters
- 5.8 Writing Setters and Getters
- 5.9 National Parks
- 5.10 Impact of Computing
- 5.11 Review
- 5.12 Unit Quiz
Unit 6: Array
Learn about the array, which can be used to manage large amounts of data in a single variable.
19 Modules:
- 6.1 The Case for Arrays
- 6.2 Creating Arrays
- 6.3 For Loops and Arrays
- 6.4 Processing Arrays
- 6.5 Taking Flight
- 6.6 Arrays Review
- 6.7 Arrays Quiz
- 6.8 Arrays and Objects
- 6.9 Comma Separated Values
- 6.10 Arrays and Objects 2
- 6.11 ToDo List
- 6.12 Dream Journal
- 6.13 Arrays and Objects Review
- 6.14 Arrays and Objects Quiz
- 6.15 Global Temperatures
- 6.16 Graphing Temperatures
- 6.17 Regional Temperatures
- 6.18 ForEach Loops
- 6.19 Lab: Music
Unit 7: ArrayList
Learn about dynamic arrays or mutable arrays.
12 Modules:
- 7.1 Introduction to ArrayLists
- 7.2 Using ArrayLists
- 7.3 Traversing ArrayLists
- 7.4 Processing ArrayLists
- 7.5 Parallel ArrayLists
- 7.6 Selection Sort
- 7.7 Insertion Sort
- 7.8 Binary Search
- 7.9 Risks to Privacy
- 7.10 Review
- 7.11 Unit Quiz
- 7.12 Lab: Data
Unit 8: 2D Array
Explore the idea of an array of arrays.
8 Modules:
- 8.1 Arrays of Arrays
- 8.2 Random Haikus
- 8.3 Multidimensional Arrays
- 8.4 Dimensions
- 8.5 Processing In Multiple Dimensions
- 8.6 Review
- 8.7 Unit Quiz
- 8.8 Lab: The 256 Game
Unit 9: Inheritance
Understand class hierarchy and inheritance patterns with hands-on exercises.
7 Modules:
- 9.1 Introduction to Inheritance
- 9.2 Extends
- 9.3 Equals
- 9.4 Super
- 9.5 Polymorphism
- 9.6 Inheritance Review
- 9.7 Inheritance Quiz
Unit 10: Recursion
Explore recursion and draw fractals!
8 Modules:
- 10.1 Introduction to Recursion
- 10.2 Recursive Algorithms
- 10.3 Tracing Recursive Algorithms
- 10.4 Recursive Binary Search
- 10.5 Merge Sort
- 10.6 Recursion Practice
- 10.7 Review
- 10.8 Unit Quiz